Qt5未find目标条件
我只是更新到OS X Mavericks的命令行工具的最新版本,现在编译我的(以前工作)的代码,它会引发以下错误
> clang: warning: no such sysroot directory: > '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk' > In file included from ../QtOpenGL/Main.cpp:1: In file included from > ../../Qt/5.3/clang_64/lib/QtWidgets.framework/Versions/5/Headers/QApplication:1: > In file included from > ../../Qt/5.3/clang_64/lib/QtWidgets.framework/Versions/5/Headers/qapplication.h:45: > In file included from > /Users/BB/Qt/5.3/clang_64/lib/QtCore.framework/Headers/qcoreapplication.h:45: > In file included from > /Users/BB/Qt/5.3/clang_64/lib/QtCore.framework/Headers/qglobal.h:76: > /Users/BB/Qt/5.3/clang_64/lib/QtCore.framework/Headers/qsystemdetection.h:196:12: > fatal error: 'TargetConditionals.h' file not found > # include <TargetConditionals.h> > ^ 1 error generated. make: *** [Main.o] Error 1 20:29:52: Le processus "/usr/bin/make" s'est terminé avec le code 2. Erreur lors > de la compilation/déploiement du projet QtOpenGL (kit : Desktop Qt > 5.3.0 clang 64bit) When executing step "Make"
有谁知道,如果改变这一行
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
从sdk 8到9会工作? 如果是这样,Qt5的参数在哪里可以改变?
对于其他人的参考,我通过编辑我的平台mkspec文件解决了这个问题:
/users/nic/Qt/5.3/clang_64/mkspecs/qdevice.pri
更改以下行:
!host_build:QMAKE_MAC_SDK = macosx10.8
对此:
!host_build:QMAKE_MAC_SDK = macosx10.9
一定要清理你的项目,并再次运行qmake。
NIC。
也可以通过.pro
下行添加到.pro
文件来编译该项目
QMAKE_MAC_SDK = macosx10.9
如果你在OS X以外的平台上编译,那么对BRabbit27解决scheme的改进是:
macx { QMAKE_MAC_SDK = macosx10.9 }
在Qt 5.5,MacOS 10.10.4中有同样的问题。 我从项目目录中删除了.qmake.conf和.qmake.stash。
我刚刚升级到XCode 9,我开始在macOS Sierra(10.12)上遇到这个问题。 问题是,Xcode将默认符号链接移动到10.13。 修理:
cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs sudo ln -s MacOSX.sdk MacOSX10.12.sdk
我发现我的项目根目录下的“.qmake.cache”文件引用了Mac OS 10.8。 解决的办法是删除文件并从头开始构build项目。
我在安装Xcode 10.13之前安装了Qt 5.9.1。 由于我升级了Xcode,出现以下警告的错误消息开始显示。
:-1: warning: no such sysroot directory: '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk' [-Wmissing-sysroot]
我解决了这个问题
QMAKE_MAC_SDK = macosx
至
QMAKE_MAC_SDK = macosx10.13
在以下文件中:
path_where_I_installed_qt/Qt/5.9.1/clang_64/mkspecs/qdevice.pri
我希望这个对你有用。
对于Qt 5.8和iOS版本,我在XCode文件夹中添加了sdk的符号链接:
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs ln -s iPhoneOS.sdk iPhoneOS10.0.sdk cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs ln -s iPhoneSimulator.sdk/ iPhoneSimulator10.2.sdk
对我来说,手动删除输出目录的内容就解决了问题(Qt 5.9,Xcode9,MacOS 10.12.6)。 清洁/重build的确留下了一些腐败的东西。
- 打开iOS模拟器与iOS 8testing版的错误:“无法启动iOS模拟器”
- 铛错误:未知参数:'-mno-fused-madd'(python软件包安装失败)
- 适用于OS X Mavericks的Eclipse Kepler请求Java SE 6
- 在MAC OSX 10.9上设置JAVA_HOME环境variables
- OS X 10.9 gcc链接到铛
- 运行两个命令时Python崩溃(分段错误:11)
- 无法更新Macports(使用Mac OS X Mavericks)
- 应用程序无法打开,因为它来自不明身份的开发人员
- 在Mac OS X Mountain Lion和Mavericks上是否有任何替代valgrind的方法来检测C / C ++应用程序的内存泄漏?