在Mac OS X上安装g++

3

我刚刚更新到OS X Mavericks,似乎它打乱了我的整个编译器设置。不仅需要重新安装JDK才能使用Java编译器,当我尝试使用GCC/G++编译C/C++时也会出现以下错误:

/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.1/4.7.2/../../../../include/c++/4.7.2/cwchar:46:19: fatal error: wchar.h: No such file or directory

除了升级之外,我不知道该怎么想。我的问题是:我如何设置g ++在OS X上进行编译?如果已经设置好了,那么问题在哪里?

如果我可以提供更多信息,请告诉我。

注意:我使用homebrew安装了gcc 4.7,但似乎不起作用。当我特别使用g ++ -4.7 code.cpp时,我收到相同的错误消息。


据我所知,当安装带有“命令行工具”的Xcode时,OSX会被设置好。 - Zaiborg
最初是的。我曾经在ML上尝试在最新版本上设置它,并且使其正常工作。但是我不记得我是如何设置的,而且我觉得在升级过程中不应该有太大的变化... - muttley91
1个回答

5
安装Xcode的命令行工具(适用于OS X Mavericks)解决了我的问题。这里是链接:OSX: Xcode Downloads
经常被提到的xcode-select --install命令一直提示找不到请求的软件。
需要澄清的是:您需要使用Homebrew安装gcc-4.7。更新到最新版本的CMD工具只修复了从Mountain Lion升级到Mavericks时引起的兼容性问题。

你知道这是否支持C++11吗?我已经安装了命令行工具,但我认为这是在今年早些时候或可能是去年晚些时候完成的。 - muttley91
使用 g++-4.7 --std=c++11 可以获得 C++11 支持。我一直在使用 Mac OS 10.8 命令行工具,同时也在使用 Mountain Lion(很可能是你下载的那个)。升级到 Mavericks 后,我收到了你提到的错误信息,并安装了适用于 Mavericks 的命令行工具。从那时起,一切都运行得很顺利。 - Marius
我有点困惑,你说你通过安装Xcode命令行工具解决了问题,但是如果你使用g++-4.7,那么你并没有使用它们。当你安装了Xcode 5命令行工具后,g++就是clang++的别名,因为Xcode 5中没有GCC支持。 - trojanfoe
抱歉,我应该澄清一下:这个“修复”是基于使用Homebrew安装的gcc-4.7。 - Marius

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接