gccをアップグレード

とあるサーバのgccが古くて使いもんにならんので、アップグレードしてやることになりました。畳と妻とgccは新しいに限るわけですよ。

まずは、binutilsのアップグレードから。アセンブラあたりから新しくしてやらんと、gccもアップグレードできないらしい。そりゃごもっともか。

# tar xvfz binutils-2.16.tar.gz
# cd binutils-2.16
# ./configure
# make && make install

んで、gccをドカンと。

# tar xvfz gcc-3.4.3.tar.gz
# mkdir gccdir
# cd gccdir
# ../gcc-3.4.3/configure --enable-languages=f77,c++
# make bootstrap
# make install

スゲー時間かかる。どんだけネットサーフィンさせれば気が済むんだろうか…。ちなみに、今見てたのは「ワンデーアキュビューカラー」なんだけど、いやはや細部まで凝っていてスゲー。圧倒されたよ…素敵。

で、インストールできたと思って、うおりゃーって gcc -v したのに、何故かバージョンは変わらず古いまま。あんだけ時間かかったのに失敗してたのかーって、かなり焦るんですけど。んで、ごにょごにょ調べた結果、原因はパス。

既存の gcc は /usr/bin/gcc にあって、新しく入れたものは /usr/local/bin/gcc に入っていた。このとき、環境変数の PATH が /usr/bin:/usr/local/bin みたいになっていたので、単純に gcc -v ってすると、優先順位的に古い方(/usr/bin)が呼び出されていたってカラクリ。うぎゃー、マジで盲点ですがな!

ということで、PATH の順番を書き換えて export して、無事に切り替え完了。お疲れさまでした。

このエントリーのトラックバックURL
http://www.deftrash.com/admin/mt4/mt-tb.cgi/223