使用Xcode 4.3.1的OS X Lion上的GCC


14

在OS X Lion上安装Xcode 4.3.1之后,我失去了GCC编译器。我的学习需要这个。有人知道我将如何安装它吗?我只能找到有人建议安装Xcode 4.3.1,但由于使用了最新的Xcode版本,Apple已将GCC编译器移至Xcode.app中,并且它似乎与GCC编译器版本不同与以前版本的Xcode捆绑在一起的一个。

Answers:


24

打开XCode,在下载安装命令行工具下转到首选项


2
这绝对是最简单的方法。谢谢。
SimonBS 2012年

15

在尝试编译Ruby 1.8.7(我的其他人)的背景下,最近有一些关于如何执行此操作的博客文章。简短的答案:

安装命令行工具(在Xcode中:“首选项”>“下载”>“组件”;或者,如果没有/想要安装Xcode,则可以转到Apple并分别下载它们)-这将安装gcc命令,但实际上是“安装Homebrew”(说明) ,OS X的软件包管理器

然后,安装“ dupes”自制软件存储库,并从中安装真正的GCC 4.2编译器:

brew update
brew tap homebrew/homebrew-dupes
brew install apple-gcc42

/usr/bin/gcc仍将是i686-apple-darwin11-llvm-gcc-4.2,但/usr/local/bin/gcc-4.2仍将是i686-apple-darwin11-gcc-4.2.1(以及相关的工具g++-4.2等,也在中/usr/local/bin

然后,您可以使用构建过程使用的任何机制(例如,适当地设置CC和CXX环境变​​量)来选择那些编译器,而不是clang版本。


我真希望几天前找到您的解决方案。我连续打了两天。如果可以的话,我会+20。
机会

5

我不将Xcode 4.3用于实际的Xcode项目,仅用于命令行源代码编译,并且存在相同的问题。您可以从终端使用以下命令恢复gcc和cc命令:

cd /usr/bin
rm cc gcc c++ g++
ln -s gcc-4.2 cc
ln -s gcc-4.2 gcc
ln -s c++-4.2 c++
ln -s g++-4.2 g++

将在系统范围内进行更改,因此在执行此操作之前请确保这是您想要的。

为了使这些命令起作用,您还需要安装Xcode命令行工具(如果尚未安装)。可以通过Xcode的下载首选项窗格安装工具。


2
一个建议:不要删除旧的二进制文件(脚本的第2行),而只需将它们放在/ usr / bin下的存档目录中。这样,如果您需要它们,您仍然可以通过绝对路径来调用它们。
Scott C Wilson

好建议。甚至,随便对它们进行处理:mv cc cc.orig && mv gcc gcc.orig或类似的事情。
Lantrix 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.