QtCreator:`clang:-stdlib=libc++ 的无效部署目标(需要 OS X 10.7 或更高版本)`
Posted
技术标签:
【中文标题】QtCreator:`clang:-stdlib=libc++ 的无效部署目标(需要 OS X 10.7 或更高版本)`【英文标题】:QtCreator: `clang: invalid deployment target for -stdlib=libc++ (requires OS X 10.7 or later)` 【发布时间】:2013-09-01 14:13:39 【问题描述】:我正在 QtCreator 中编译我的 Qt 5.1.0 项目,我得到以下输出:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
-c -pipe -O2
-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
-mmacosx-version-min=10.6 -std=c++11 -stdlib=libc++ -Wall -W -fPIE
-DQT_NO_DEBUG
-DQT_WIDGETS_LIB
-DQT_GUI_LIB
-DQT_CORE_LIB
-I../../../Qt/Qt5.1.0/5.1.0/clang_64/mkspecs/macx-clang
-I.
-I../../../Qt/Qt5.1.0/5.1.0/clang_64/include
-I../../../Qt/Qt5.1.0/5.1.0/clang_64/include/QtWidgets
-I../../../Qt/Qt5.1.0/5.1.0/clang_64/lib/QtWidgets.framework/Headers
-I../../../Qt/Qt5.1.0/5.1.0/clang_64/include/QtGui
-I../../../Qt/Qt5.1.0/5.1.0/clang_64/lib/QtGui.framework/Headers
-I../../../Qt/Qt5.1.0/5.1.0/clang_64/include/QtCore
-I../../../Qt/Qt5.1.0/5.1.0/clang_64/lib/QtCore.framework/Headers -Ibuild/debug/.moc
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/AGL.framework/Headers
-I.
-F/Users/apple/Qt/Qt5.1.0//5.1.0/clang_64/lib
-o build/debug/.obj/main.o ./main.cpp
clang: error: invalid deployment target for -stdlib=libc++ (requires OS X 10.7 or later)
XCode 版本:4.6.3
Mac OS 版本:10.8.4
我该如何解决这个问题?
【问题讨论】:
【参考方案1】:你需要使用:
-stdlib=libstdc++
代替:
-stdlib=libc++
这是因为 /usr/lib/libc++.dylib
仅安装在 OSX 10.7+ 上,并且您已指定 -mmacosx-version-min=10.6
。
您也可以通过指定:-mmacosx-version-min=10.7
并离开 -stdlib=libc++
来解决此问题,这样您将获得更好的 C++11 支持。
【讨论】:
Thx~~ Makefile 是由 qmake 自动生成的,我可以通过修改我的 .pro 文件来解决这个问题吗? 你可能可以,覆盖错误的变量,但是更长期的解决方案是修改 qmakespec 文件。以上是关于QtCreator:`clang:-stdlib=libc++ 的无效部署目标(需要 OS X 10.7 或更高版本)`的主要内容,如果未能解决你的问题,请参考以下文章
使用带有 clang++ -stdlib=libc++ 的 libstdc++ 编译库
“Qt Creator 2.4.1 for Windows (53 MB)”是不是包含 mingw 或 clang? [关闭]