C对苹果++ 11与锵或GCC(C++11 on Mac with Clang or GCC)

2019-08-04 08:33发布

我有颇富狮子的Xcode 4.5.2,和我有安装最新的“命令行工具”,但是当我试图编译g++clang++ (和选项-std=c++11 -stdlib=libc++ )我得到一个错误。 用g++

cc1plus: error: unrecognized command line option "-std=c++11"
cc1plus: error: unrecognized command line option "-stdlib=libc++" 

随着clang++

clang: error: invalid deployment target for -stdlib=libc++ (requires OS X 10.7 or later)

这是在Qt工程。

那么,如何可以使用C ++ 11在我的Mac?

Answer 1:

当你发现,G ++不支持这些命令行选项。

这听起来像你使用Xcode的。

对于铛,你应该看看该项目的设置,并确保“部署目标”设定为10.7(10.8)

什么错误信息,告诉你的是,的libc ++不适用于10.6和前。



Answer 2:

我安装我的Mac上的gcc-4.7,使C ++ 11的工作。 GCC在其目前的版本是支持C ++ 11还算不错,所以这应该是一个合理的选择。

安装可以这样做自制并没有那么复杂(至少我是能够做到这一点...)

要安装自制,如果你不已经拥有了它:

ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"

现在运行

brew doctor

并解决什么问题上来(有书面的hombrew文档中的的东西)。 最后,安装最新的GCC:

brew install gcc

如果一切顺利的话,你应该能够访问g++-4.7 ,它允许-std=c++0x



Answer 3:

尝试-std=c++0x ,如果c++11不起作用。 为支持-std=c++11的选择是在GCC相对较新的,你可能没有足够新的版本。

我相信在libc中++问题马歇尔。



文章来源: C++11 on Mac with Clang or GCC