让QMake生成一个合适的.app

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (126)

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

  • 4个申请
  • 50多个库
  • 20多个第三方库

该项目使用QMake(Trolltech的Qt的一部分)在Linux上构建生产版本,但我一直在MacOS上构建它。

我可以使用QMake很好地在MacOS上构建,但是我在制作最终的.app方面遇到了麻烦。它需要收集所有第三方框架和动态库,所有项目的动态库并确保应用程序找到它们。

我在网上读过关于使用install_name_tool但是想知道是否有一个自动化过程。

(也许答案是使用XCode,请参阅相关问题,但它会产生构建uic和moc的问题)

谢谢

提问于
用户回答回答于
用户回答回答于

我们在Last.fm遇到了同样的问题,我查看了DeployQt,如果你有第三方库,它就没什么用了。最后,我编写了一个生成Makefile的perl脚本,您可以使用该脚本生成.app和/或.dmg。

我在这里上传了它:http//www.methylblue.com/detritus/QMake.dmg/

要使用它,请将其添加到应用程序的专业文件中:

 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   
}

我敢肯定它不是全部都是便携式的,但对其他人来说使用并看看是否如此是好的。

这基本上是此代码的第一个正式版本,所以请向我发送错误报告,以及改进。谢谢。

扫码关注云+社区

领取腾讯云代金券