web-dev-qa-db-ja.com

OS X Mountain Lion:gcc-4.2そのようなファイルやディレクトリはありません

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
33
ktusznio

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を介してパスにあることを確認してください。)

その後、Gemは正常にインストールされました。

90
ktusznio

BrewでApple-gcc42をインストールするだけです。 gcc-4.2を生成します。

brew install Apple-gcc42

したがって、シンボリックリンクは必要ありません。シンボリックリンクはAppleアップデートで削除される可能性があります。

自作

14
Piioo

@Artur Boderaが述べたように、最新のOSXは、systems/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
1
fivenp