在 OS X 上设置 g++

Posted

技术标签:

【中文标题】在 OS X 上设置 g++【英文标题】:Set up g++ on OS X 【发布时间】:2013-10-24 05:24:17 【问题描述】:

我刚刚更新到 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 上编译?如果已经设置好了,这里有什么问题?

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

注意:我使用自制软件安装了 gcc 4.7,但它似乎不起作用。当我专门使用g++-4.7 code.cpp 时,我得到了同样的错误。

【问题讨论】:

afaik osx 在使用command line tools 安装 xcode 时设置 原来是的。我试图在 ML 的最新版本上设置它并让它工作。不过,我不记得我是如何设置它的,而且我觉得在升级过程中不应该有重大改变...... 【参考方案1】:

为 Xcode 安装 命令行工具 (OS X Mavericks) - 2013 年 10 月下旬 为我解决了这个问题。这是链接:

OSX: Xcode Downloads

经常提到的xcode-select --install 命令一直说找不到请求的软件。

澄清一下:您需要已经使用 Homebrew 安装了 gcc-4.7。更新到最新版本的 CMD Tools 仅修复了从 Mountain Lion 升级到 Mavericks 导致的兼容性问题。

【讨论】:

你知道这是否会支持 C++11 吗?我已经安装了命令行工具,但我想我是在今年年初或去年年底安装的。 使用 g++-4.7 --std=c++11 提供 C++11 支持。我在使用 Mountain Lion(很可能是您下载的那个)时一直在使用 Mac OS 10.8 命令行工具。升级到 Mavericks 后,我收到了您前面提到的错误消息,并为 Mavericks 安装了适当的命令行工具。从此一切顺利。 我很困惑;你说你通过安装 Xcode 命令行工具解决了它,但如果你使用g++-4.7,你就没有使用它们。当您安装了 Xcode 5 命令行工具后,g++clang++ 的别名,因为 Xcode 5 中不支持 GCC。 抱歉,我应该澄清一下:这个“修复”基于使用 Homebrew 安装的 gcc-4.7。

以上是关于在 OS X 上设置 g++的主要内容,如果未能解决你的问题,请参考以下文章

ini 在Mac OS X上设置dnsmasq

如何在 Mac OS X 上设置 libusb?

在 OS X 上设置无密码 ssh 到 localhost

在 Mac OS X 上使用 CGL 设置 OpenGL 上下文

如何在 OS X 上全局设置 java 系统属性?

如何在 Mac OS X 上设置已保存文档的 kMDItemKind?