自制软件无法找到gcc

时间:2012-04-29 19:09:34

标签: gcc homebrew

我无法让自制软件在Lion上工作。出于某种原因,它正在捡起clang而不是gcc。

==> Upgrading gnutls
...
checking for gcc...
/usr/bin/clang checking whether the C compiler works... no
'brew doctor'说:

We couldn't detect gcc 4.2.x. Some formulae require this compiler. NOTE: Versions of XCode newer than 4.2 don't include gcc 4.2.x.

注意:我已经从XCode安装了命令行工具,包括gcc。

$ which gcc
/usr/bin/gcc
$ gcc -v
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.9.00)

如何强制brew使用gcc?

3 个答案:

答案 0 :(得分:12)

在Xcode 4.2之后,Apple停止使用Xcode分发gcc。相反,他们分发llvm-gcc(和clang),这些不是 gcc。你可以像使用gcc -v一样看到这个:它显示LLVM build

为了使用gcc,你必须自己编译。有一个自制的公式,但您必须使用brew tap homebrew/dupes点击自制/欺骗。

请注意,截至今天,如果使用clang编译,gcc公式不起作用。您必须使用brew install --use-llvm gcc安装它。

另请注意,Homebrew明确搜索gcc-4.2。您必须为Homebrew创建一个符号链接才能找到gcc。

答案 1 :(得分:0)

如果您有Yosemite观看此视频,则在安装Homebrew时会立即从命令提示符提示您输入XCode

http://dimecasts.net/Casts/CastDetails/218

答案 2 :(得分:0)

我不确定何时更改,但是Apple命令行工具现在包括gcc和clang可执行文件:

$ which gcc
/usr/bin/gcc

$ gcc -v
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/4.2.1
Apple clang version 11.0.0 (clang-1100.0.33.17)
Target: x86_64-apple-darwin19.3.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

$ which clang
/usr/bin/clang

$ clang -v
Apple clang version 11.0.0 (clang-1100.0.33.17)
Target: x86_64-apple-darwin19.3.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

您可以通过运行以下命令来获取它:

$ xcode-select --install