我有一个很大的现有C ++项目涉及:
该项目使用QMake(Trolltech的Qt的一部分)在Linux上构建生产版本,但我一直在MacOS上构建它。
我可以使用QMake在MacOS上内置很好但是我在制作最终的.app时遇到了麻烦。它需要收集所有第三方框架和动态库,所有项目的动态库,并确保应用程序找到它们。
我在线阅读有关使用install_name_tool的内容,但想知道是否有自动化过程。
(也许答案是使用XCode,请参阅相关问题,但它会产生构建uic和moc的问题)
谢谢
答案 0 :(得分:3)
答案 1 :(得分:2)
我们在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
}
我确信它不是所有可移植的,但是对其他人来说使用并看看是否如此是好的。
这基本上是此代码的第一个正式版本,所以请向我发送错误报告,以及改进。感谢。
答案 2 :(得分:0)
我通过在OS X上静态构建我的Qt应用程序来完全解决这个问题。但这对你来说可能并不实用。