Mac OS X Mountain Lion で gcc make

command line tools を install したあとの Mountain lion で、

% ls -l /usr/bin/ | grep gcc
lrwxr-xr-x 1 root wheel 12 Jul 28 15:48 gcc -> llvm-gcc-4.2
lrwxr-xr-x 1 root wheel 28 Jul 28 15:48 gcov-4.2 -> ../llvm-gcc-4.2/bin/gcov-4.2
lrwxr-xr-x 1 root wheel 52 Jul 28 15:50 i686-apple-darwin11-llvm-g++-4.2 -> ../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-g++-4.2
lrwxr-xr-x 1 root wheel 52 Jul 28 15:50 i686-apple-darwin11-llvm-gcc-4.2 -> ../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2
lrwxr-xr-x 1 root wheel 32 Jul 28 15:50 llvm-cpp-4.2 -> ../llvm-gcc-4.2/bin/llvm-cpp-4.2
lrwxr-xr-x 1 root wheel 32 Jul 28 15:50 llvm-g++ -> ../llvm-gcc-4.2/bin/llvm-g++-4.2
lrwxr-xr-x 1 root wheel 32 Jul 28 15:50 llvm-g++-4.2 -> ../llvm-gcc-4.2/bin/llvm-g++-4.2
lrwxr-xr-x 1 root wheel 32 Jul 28 15:50 llvm-gcc -> ../llvm-gcc-4.2/bin/llvm-gcc-4.2
lrwxr-xr-x 1 root wheel 32 Jul 28 15:50 llvm-gcc-4.2 -> ../llvm-gcc-4.2/bin/llvm-gcc-4.2


……全部 LLVM GCC へのシンボリックリンク。つまり、どうしても LLVM を通してしまいます。
ふつーのGCCでやりたい……。

そこで、homebrew を使います。

% brew search gcc


として、apple-gcc42を見つけます。
しかし、そのまま install apple-gcc42 とやっても出ないので、まず

% brew tap homebrew/dupes


その後、

%brew install apple-gcc42


これで、Mac OS X Lion のように出来ます。

%vi ~/.zshrc
%source ~/.zshrc


として、CC や CXX などのパスを変えます。一応 ld は残ってるので LD は /usr/bin/ld のまま。
gmp, mpc, mpfr の存在を確認して、gcc を make します。

なぜか自分のは何回やっても通らず、気づけば通りました。
なぜだろう。

libgcc がないとか言われてたのに、突然奇麗に make できました。

基本的には
http://shignpost.blogspot.jp/2011/11/gcc.html

を参照すればできます。

コメント

このブログの人気の投稿

相互インクルード対策

make error "Circular"

gdb操作