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

  • 4个申请
  • 50多个图书馆
  • 20多个第三方图书馆

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

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

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

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

谢谢

===============>>#1 票数:3 已采纳

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

deployqt

希望这可以帮助 !

===============>>#2 票数: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   
}

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

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

===============>>#3 票数:0

我通过在OS X上静态构建我的Qt应用程序来完全解决这个问题。但这对您来说可能并不实用。

  ask by mkrus translate from so

未解决问题?本站智能推荐:

1回复

如何使用带QT的qmake生成xcode项目[关闭]

运用 只能生成较旧版本的test.pbproj,无法在xcode 4中打开 如何生成test.xcodeproj
1回复

qmake项目和Mac OS X SDK

在Qt项目中使用Mac OS SDK的最明智的方法是什么? 您需要具有基本SDK(MacOSX10.X.sdk)的路径,所需标头的路径,并指出要使用的框架。 目前,我正在我的专业文件中执行此操作(在这里提供了帮助; Qt,Qmake和Mac Os X SDK ): 这些SDK位于
1回复

在Mac OS X中没有XCode项目的qmake QT 4.6应用程序?

我已经下载了KardsGT的源代码,该源代码是为QT 4.6.x写到我的Mac OS X 10.6.8系统上的。 由于KardsGT不是专门为Mac OS X编写的(它是为GNU / Linux编写的),所以没有相关的XCode文件等。当我在源代码上运行qmake时,会出现很多错误,例如
1回复

在另一个qmake项目中包含一个qmake项目

我已经在qt / c ++中创建了一个应用程序 Browser / Browser.pro 要启动浏览器,我需要一个代理。 我已经创建了一个代理并将其存储在Browser文件夹中 构建浏览器时,我正在生成一个应用程序,但它只是构建浏览器。 我在Browser.pro中
2回复

qt Qmake为项目生成pkgconfig

我被告知可以通过qmake生成一个pkg-config文件,但我不知道该怎么做。 我一直在网上寻找一段时间,看起来好像你只需知道该怎么做。 有人可以给我一个例子,还是指点我某种指南/教程?
1回复

qmake错误的目标生成

我有一个.pro文件,看起来像这样: 但是,它生成的makefile具有以下目标: 因此,gcc会生成一个库。 但是,我希望生成一个.pro文件中指定的可执行文件。 我不明白为什么会发生这种尴尬的事情? 任何指针表示赞赏。 谢谢 PS这是使用qtestlib
3回复

生成代码的qmake规则

我意识到我之前的问题对规则和依赖关系有点困惑。 以下.pro文件生成一个makefile,如果在qmake运行时存在“generated”目录中的源文件,该makefile可以正常工作。 但是当qmake运行时,它只生成一个makefile,而PRE_TARGETDEPS和QMAKE_
1回复

qmake和生成的qm文件

将编译后的翻译(* .qm)组织成资源的最佳(正确)方法是什么? * .qm文件在qrc文件中引用,并由两个(三个)额外目标以这种方式生成: 但是问题在于qmake第一次运行时,还没有生成qm文件,并且会产生如下打印错误: 我不喜欢将已编译的qm文件保存到VSC中的想法。
1回复

在我的qmake项目中包含另一个项目的qmake文件

每当每次发生更改(例如Qt的版本或体系结构)时,我都不得不分别编译Qwt (或与此相关的任何其他Qt项目),我感到厌倦。 所以: 我想将Qwt的make文件添加到我的项目中,以便将要编译的Qwt的文件放到我的shadow build文件夹中,在这里我可以轻松地与它们链接,而无需修改我的q
2回复

qmake不生成二进制资源文件

规格:Qt Creator 2.5.1,Qt 4.7.4(32位) 根据Qt文档我的理解是,在Qt的.pro文件中包含一个资源(.qrc),只需要qmake生成正确的qrc _ * .cpp文件。 我的项目似乎并非如此。 当运行qmake时,make文件被创建,并且我在edit_rcc