在Mac OS X Lion上使用gcc而不是llvm-gcc

9

gcc 在Mac OS X Lion操作系统上被符号链接到 llvm-gcc

prosseek ~> ls -alF /usr/bin/gcc
lrwxr-xr-x  1 root  wheel  12 Nov 12 14:39 /usr/bin/gcc@ -> llvm-gcc-4.2

当调用gcc时,我该如何设置以使用gcc-4.2
4个回答

13

自从 Xcode 4.2 在 Lion 系统中发布,苹果不再提供其之前版本的 gcc-4.2(它曾在 Xcode 4.1 和早期版本中提供)。现在只提供 llvm-gcc(带有 llvm 代码后端的 gcc 前端)和 clang(带有 llvm 后端的 clang 前端)。虽然可能从其他来源(如 MacPorts)安装传统版本的 原始的 GNU gcc-4.2,并且不会干扰 /usr/bin ,但苹果已经明确表示他们不再支持 gcc 并希望开发人员和用户转向使用 clang


Ned是正确的。从源代码编译gcc可能是可能的,但除非你绝对需要gcc,否则最好选择llvm-gcc,因为你的代码将是向前兼容的,并且考虑到正在致力于llvm的能量数量,它很可能会是一个更好的编译器(并且很可能已经是了)。 - wadesworld
在我的Mac OS X Lion上,我仍然有gcc-4.2,以及llvm-gcc-4.2。我想这是误导我认为有两个gcc编译器。 - prosseek
1
你是否安装了当前的Xcode 4.2.x?如果是从那里开始的话,就没有/usr/bin/gcc-4.2。Lion和之前版本的Xcode 4.1确实有/usr/bin/gcc-4.2 - Ned Deily
@Ned:我安装了Xcode 4.0,然后更新到了Xcode 4.2。 - prosseek
问题在于,苹果不再支持使用最新的Lion Xcode与非LLVM gcc-4.2。因此,对于您最初的问题,答案是没有“官方”的方法来做到这一点,因为gcc-4.2已经不存在了。显然,有办法保留旧的gcc-4.2并使用它,例如通过更改路径等方式。您还需要什么样的答案呢? - Ned Deily

3

2

1

我个人只使用苹果的gcc,无论是否使用llvm,来构建最新可用的gcc。即使/usr/bin/gcc确实是gcc而不是某些llvm构建的包装器,它仍然非常老旧。我在这里记录了我的构建过程经验。


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