7

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

==> Upgrading gnutls
...
checking for gcc...
/usr/bin/clang checking whether the C compiler works... no

“酿造医生” 说:

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?

4

3 回答 3

12

在 Xcode 4.2 之后,Apple 停止使用 Xcode 分发 gcc。相反,他们分发不是 gcc 的 llvm-gcc(和 clang 。您可以使用 gcc -v 看到这一点,就像您所做的那样:它显示LLVM build.

为了使用 gcc,您必须自己编译它。有一个自制公式,但您必须使用brew tap homebrew/dupes.

请注意,从今天开始,如果使用 clang 编译,gcc 公式将不起作用。您必须使用brew install --use-llvm gcc.

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

于 2012-05-16T09:21:17.783 回答
0

如果您让 Yosemite 观看此视频,它会在您安装 Homebrew 时直接从命令提示符提示您输入 XCode

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

于 2015-02-19T01:08:15.287 回答
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
于 2020-02-13T18:29:44.813 回答