3

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

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

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

我可以使用 QMake 在 MacOS 上进行构建,但我无法生成最终的 .app。它需要收集所有第三方框架和动态库,所有项目的动态库并确保应用程序找到它们。

我在网上阅读了有关使用 install_name_tool 的信息,但想知道是否有一个自动化的过程。

(也许答案是使用 XCode,请参阅相关问题,但在构建 uic 和 moc 时会遇到问题)

谢谢

4

3 回答 3

3

我相信这可能对您有很大帮助:

部署qt

希望这可以帮助 !

于 2008-08-26T12:00:19.607 回答
2

我们在 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   
}

我敢肯定它还不是便携的,但其他人使用它会很好,看看是否是这样。

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

于 2008-09-17T11:08:43.243 回答
0

通过在 OS X 上静态构建我的 Qt 应用程序,我完全避开了这个问题。不过,这对你来说可能不实用。

于 2008-09-04T15:13:54.793 回答