9/29, 2011
GCCが… 無い…!
Xcode 4.2のあるバージョンを以降を入れるとgccが消えるようです。つまり、
$ ls /usr/bin/gcc
/usr/bin/gcc -> llvm-gcc-4.2
「えっ」
「聞いてない…」
となるわけです。 でも、Appleは散々gccはオワコンと言っているので復活する兆しは無いでしょう。このへんはgccのライセンス周りが大きく影響してそうです。 で、困るのは今後標準になるclangは色々エラー出まくるとか、llvm-gccが微妙にgccと違う挙動をするとか、あぁ、もう今そういう問題に付き合ってる暇はないんだよおおぉぉ!ってなるわけです。
でも、無い物はない。困った。 そこで、一番手抜きな方法でgcc-4.2だけをいっこ前のXcodeから入れましょう。
Xcode 4.1を用意します。App StoreのXcodeは4.2になってしまっていますがここからダウンロードできます(デベロッパ登録が必要です。)
インストーラーから
gcc4.2.pkgを取り出して単体でインストールする。
簡単ですね。ちなみに/usr/bin/gcov-4.2だけが衝突して上書きされるので、元のgcov-4.2(../llvm-gcc-4.2/bin/gcov-4.2へのシンボリックリンク)を気になる人は避けておくとよいかも。
どんなファイルがインストールされるのか知りたい場合は、
$ pkgutil --payload-files gcc4.2.pkg
.
./usr
...
./usr/libexec/gcc
./usr/bin/c++-4.2
./usr/bin/cpp-4.2
...
とすればわかります。
10/15, 2011更新: App StoreのXcodeは4.2になってしまっているので、Xcode 4.1の入手先を明記しました。