【发布时间】:2013-01-17 09:19:33
【问题描述】:
这一切看起来都是一团糟。
我想要的只是一个实现 C++11 的编译器,所以我可以使用<chrono>。但是从一开始我就很困惑。
目前,我通过调用 G++ 来构建程序,但是当我通过 $ g++ -v 检查版本时,我得到:
gcc 版本 4.2.1(基于 Apple Inc. build 5658)(LLVM build 2336.11.00)
这是怎么回事?我在使用 G++ 吗?海合会? LLVM?我什至不知道。它们是一样的吗?
所以现在我正在尝试通过gnu.org 构建和下载 GCC 4.7,但我不知道任何指南都在谈论什么。我从来没有见过这么多我不知道的东西的首字母缩写词。
为什么这么复杂?所有这些版本是怎么回事,其中一些只实现了 C++11 的某些部分而不是其他版本?
【问题讨论】:
-
看起来您使用的是 Mac。您可以使用MacPorts 安装现代版本的 GCC。从源代码编译 GCC 有点复杂,所以我想你会想要 MacPorts。
-
@SethCarnegie 谢谢!我以前点击安装。现在需要一本命令行命令书来安装任何东西。喜欢什么。
-
阅读手册的this section,安装MacPorts后可以做
sudo port install gcc47,你必须找到使用g++ 4.7的命令(我不记得了)。另外,我认为 Mac 安装了现代 Clang。 -
@SethCarnegie 是的,但是用
clang编译我得到fatal error: 'chrono' file not found -
是的,你必须告诉它你的标准库在哪里,什么东西,我不知道该怎么做。您可以通过选项或其他方式检查 XCode 如何调用它。但我避免了所有这些,只使用我向您展示的命令安装 GCC。
标签: c++ macos c++11 gnu toolchain