我正在使用Xcode / Qt 4.8.4在Mac OS X 10.8上开发C ++应用程序。我希望它能在Mac OS X 10.6及更高版本上运行。为了做到这一点,我将Xcode部署目标设置为10.6,我也使用macdeployqt。它在Mac OS X 10.8上运行良好,但在10.6上有很多很多问题。
由于缺少10.6和10.8位于不同位置的框架,应用程序崩溃:
Dyld错误消息:未加载库: /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText 参考自: /Volumes/deploy/MyApp.app/Contents/MacOS /../框架/ QtGui.framework /版本/ 4 / QtGui
未加载库: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO 参考自: /Applications/MyApp.app/Contents/MacOS /../框架/ QtGui.framework /版本/ 4 / QtGui
...类似QtWebKit,QtNetwork等问题......
有一些棘手的问题是关于某些系统库中缺少符号,比如libobjc.A.dylib,libSystem.B.dylib,libc ++ abi.dylib,libc ++。1.dylib等:
Dyld错误消息:未找到符号: __dispatch_queue_attr_concurrent引用自:/tmp/MyApp.app/Contents/MacOS/../Frameworks/libobjc.A.dylib预期 在:/usr/lib/libSystem.B.dylib中 /tmp/MyApp.app/Contents/MacOS /../框架/ libobjc.A.dylib
有人可以解释如何解决这个问题吗?使用Qt 4.8.4时,是否有可能以Mac OS X 10.6为目标?或许,Qt 4.8.4与10.6不完全兼容?我试图在.pro文件中设置QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.6,我使用macdeployqt只是将MyApp.app作为唯一参数传递。任何帮助表示赞赏。
答案 0 :(得分:0)
根据我的经验,你最好只在分区上安装10.6并在那里进行构建。我一直在使用Mac OS 10.6对抗Qt 4.8.4并使用macdeployqt,我的应用程序很乐意在10.5到10.8上运行而没有任何问题