33

试图在 Mountain Lion 上安装 gem 并且找不到 gcc-4.2:

kamil$ gem install posix-spawn -v '0.3.6'
Building native extensions.  This could take a while...
ERROR:  Error installing posix-spawn:
    ERROR: Failed to build gem native extension.

        /Users/kamil/.rbenv/versions/1.9.3-p0/bin/ruby extconf.rb
creating Makefile

make
compiling posix-spawn.c
make: gcc-4.2: No such file or directory
make: *** [posix-spawn.o] Error 1
4

4 回答 4

90

如果你安装了 Xcode,gcc 应该是可用的。检查它在哪里:

kamil$ which gcc
/usr/bin/gcc

然后创建一个从 gcc-4.2 到普通 gcc 的用户级符号链接:

kamil$ sudo ln -s ~/bin/gcc /usr/bin/gcc-4.2

(确保用户域绑定文件夹在您的路径export PATH=...:$HOME/bin中,通过您的.bash_profile.zshrc。)

宝石安装好之后。

于 2012-09-04T04:00:33.527 回答
14

只需使用 brew 安装 apple-gcc42。它生成 gcc-4.2 。

brew install apple-gcc42

所以我们不需要符号链接,苹果更新可能会删除它。

家酿

于 2013-11-01T08:37:45.100 回答
1

我在安装 python pip 包时遇到了类似的问题(构建轮子失败)。我收到了类似的信息:

unable to execute '/usr/bin/gcc-4.2': No such file or directory
  error: command '/usr/bin/gcc-4.2' failed with exit status 1

由于 Apple 的系统完整性保护 (SIP),无法链接到,并且在/usr/bin/gcc-4.2车轮制造过程中没有将其链接到;它仍在尝试使用./usr/bin/gcc/usr/local/bin/gcc-4.2/usr/bin/gcc-4.2

我终于能够通过CC在终端中设置变量来解决这个问题:

CC=/usr/bin/gcc
# Install your packages
pip install -r requirements.txt

PS:请注意,禁用 SIP 不起作用,即使禁用 SIP,我也无法创建/usr/bin/gcc-4.2链接。

于 2020-07-11T13:29:26.053 回答
1

正如@Artur Bodera 提到的,现代 OSX 将拒绝让您在系统 /bin 文件夹中创建符号链接。

为避免这种情况,只需创建指向用户 bin 文件夹的符号链接

ln -s ~/bin/gcc /usr/bin/gcc-4.2

不要忘记将 bin 文件夹添加到您的 .zshrc 或 .bash_profile - 例如

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$HOME/bin
于 2016-04-11T14:02:55.243 回答