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