无法使用Xcode 6.0.1编译Qt

时间:2014-09-20 06:17:14

标签: c++ xcode macos qt compilation

我将Xcode更新为6.0.1,发现我不能再在Qt creater中编译Qt项目了:

警告:没有这样的sysroot目录:' /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk'

错误:' TargetConditionals.h'找不到文件

有人可以帮帮我吗?我该如何解决这个问题?

谢谢!

5 个答案:

答案 0 :(得分:4)

您将无法使用Xcode 6调试器调试代码。您应该将Xcode 6重命名为Xcode6.app,然后在您的Applications文件夹中重新安装Xcode 5.1.1作为Xcode.app。然后等到Qt正式支持Xcode 6和10.9.SDK。

答案 1 :(得分:3)

我遇到了与您相同的问题,并从此位置下载了MacOSX10.8.sdk:

GitHub - Phracker

并将其复制到

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/S DKs

解决了这个问题!

欢呼声

答案 2 :(得分:3)

我在Qt5.3中使用了以下内容,允许QtCreator与MacOSX10.9和Xcode 6.0.1一起使用。
将以下行添加到qt-install-dir / 5.3 / clang_64 / mkspecs / qdevice.pri:
!host_build:QMAKE_MAC_SDK = macosx10.9

要启用iOS版本,请将以下行添加到qt-install-dir / 5.3 / ios / mkspecs / qdevice.pri:
!host_build:QMAKE_MAC_SDK = iphoneos8.0

更新: 要将XCode 6.1用于iOS版本,该行应为:
!host_build:QMAKE_MAC_SDK = iphoneos8.1

答案 3 :(得分:1)

我遇到了同样的问题,但我运行了以下内容并且有效:

sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk

和模拟器:

sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk

答案 4 :(得分:0)

方法1

每次升级Xcode时都会出现此类错误

因此您可以在构建之前删除qt中的缓存文件,或者在收到错误时删除

rm {your target build folder}/.qmake.stash

rm {your project folder}/.qmake.stash

如果您不知道在哪里找.qmake.stash,请尝试

find ~ -name .qmake.stash

方法2

不推荐,因为使用Xcdoe APP时可能会出现构建错误

的iPhoneOS

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/
sudo ln -s iPhoneOS.sdk iPhoneOS{version}.sdk

iPhoneSimulator

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/
sudo ln -s iPhoneSimulator.sdk iPhoneSimulator{version}.sdk