代码之家  ›  专栏  ›  技术社区  ›  mkrus

让Qmake生成一个合适的.app

  •  3
  • mkrus  · 技术社区  · 16 年前

    我有一个大型的Exc++项目涉及:

    • 4应用
    • 50 +库
    • 20多个第三方图书馆

    这个项目使用qmake(Trolltech的qt的一部分)在Linux上构建生产版本,但我一直在玩在MacOS上构建它的游戏。

    我可以使用qmake在MacOS上进行扩展,但我在生成final.app时遇到了问题。它需要收集所有第三方框架和动态库、所有项目的动态库,并确保应用程序找到它们。

    我在网上读过关于使用install-name-u工具的文章,但我想知道是否有一个过程可以使它自动化。

    (也许答案是使用xcode,请参阅相关问题,但它与构建uic和moc有问题)

    谢谢

    3 回复  |  直到 9 年前
        1
  •  3
  •   iamantony    9 年前

    我相信这对你有很大的帮助:

    deployqt

    希望这有帮助!

        2
  •  2
  •   mxcl    16 年前

    我们在last.fm有同样的问题,我研究了deployqt,如果您有第三方库,它就没有多大用处了。最后,我编写了一个生成makefile的Perl脚本,您可以使用它生成.app和/或.dmg。

    我上传到这里: http://www.methylblue.com/detritus/QMake.dmg/

    要使用它,请将此添加到应用程序的pro文件中:

     macx*:!macx-xcode:release {
         system( QT=\'$$QT\' QMAKE_LIBDIR_QT=\'$$QMAKE_LIBDIR_QT\' $$ROOT_DIR/common/dist/mac/Makefile.dmg.pl $$DESTDIR $$VERSION $$LIBS > Makefile.dmg )
         QMAKE_EXTRA_INCLUDES += Makefile.dmg   
    }
    

    我敢肯定它还不完全是便携式的,但它会有利于其他人使用,看看是否是这样。

    这基本上是这段代码的第一次正式发布,所以请给我发送bug报告,还有一些改进。谢谢。

        3
  •  0
  •   logancautrell    13 年前

    我在OSX上静态地构建了我的Qt应用程序,从而彻底解决了这个问题。不过,这可能对您来说并不实际。