Qt Creator – 项目错误:Xcode没有正确设置。 您可能需要运行/ usr / bin / xcodebuild来确认许可协议

我刚刚安装了Qt 5.5,并且在OS X上首次使用了Qt Creator。当我第一次安装Qt时,它给了我一个错误信息“Xcode 5 not installed”,我认为这很奇怪,(我有Xcode 7testing版) ,但安装反正成功完成。

现在,当我开始或打开一个项目,我得到的错误:

项目错误:Xcode设置不正确。 您可能需要运行/ usr / bin / xcodebuild来确认许可协议。

当我在terminal中运行/usr/bin/xcodebuild时,我得到以下内容:

xcode-select:error:工具'xcodebuild'需要Xcode,但是活动开发者目录'/ Library / Developer / CommandLineTools'是一个命令行工具实例

我不确定Xcode与Qt Creator有什么关系,除非它与访问库提供跨平台兼容性有关,但有没有办法解决这个问题?

> = Xcode 8

在Xcode 8中,正如Bruce所说的那样,当Qt试图在寻找xcrun时候findxcrun时候,就会发生这种情况。

打开文件:

 Qt_install_folder/5.7/clang_64/mkspecs/features/mac/default_pre.prf 

更换:

 isEmpty($$list($$system("/usr/bin/xcrun -find xcrun 2>/dev/null"))) 

附:

 isEmpty($$list($$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null"))) 

〜> Xcode 8

在Xcode 8之前,安装Xcode之后安装命令行工具时会发生此问题。 Xcode-select开发者目录会被指向/Library/Developer/CommandLineTools

Point Xcode-select使用以下命令Xcode-select正确的Xcode Developer目录:

 sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer 

使用以下命令确认许可协议:

 xcodebuild -license 

这将提示您阅读许可协议。

inputagree接受条款。

如果你改变了Qt_install_folder/5.7/clang_64/mkspecs/features/mac/default_pre.prf那么它只能用于Desktop套件,而不能用于例如。 模拟器。

更好的方法是创build符号链接:

 cd /Applications/Xcode.app/Contents/Developer/usr/bin/ sudo ln -s xcodebuild xcrun 

所以您不必为所有目标更改.prf文件。

这将做的伎俩:

 #sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer 

在你的terminal中运行这个。

对于Xcode 8的用户来说,还有另一个问题。 Qt 5.7.1发布之前,请看这里暂时的解决scheme:

https://forum.qt.io/topic/71119/project-error-xcode-not-set-up-properly

总结:

在文本编辑器中打开Qt_install_folder/5.7/clang_64/mkspecs/features/mac/default_pre.prf ,并将其replace为:

 isEmpty($$list($$system("/usr/bin/xcrun -find xcrun 2>/dev/null")))) 

有了这个:

 isEmpty($$list($$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null"))) 

对我来说,正确工作的唯一方法是用'#'注释xcrun的行:

 # Make sure Xcode is set up properly #isEmpty($$list($$system("/usr/bin/xcrun -find xcrun 2>/dev/null"))): \ #error("Xcode not set up properly. You may need to confirm the license agreement by running /usr/bin/xcodebuild.") 

在文件中:Qt_install_folder / 5.7 / clang_64 / mkspecs / features / mac / default_pre.prf

如果您使用XCode 8.x从源代码构buildQt,则必须更改第551行的qt-everywhere-enterprise-src-5.7.0/qtbase/configure文件中的“-find”参数,使其看起来像:

 if ! /usr/bin/xcrun -find xcodebuild >/dev/null 2>&1; then