gccの再インストール

玄箱のbinaryにもgcc2.95.3は入っているんですが、いろいろと問題があるんです。
その原因は「gccが最小構成でインストールされている」ということ。
玄人志向さんもなぜこんなことにしたのかわかりませんが・・・

もうちょっとねー。親切にしてくれたって良いんじゃないかと。
どうせ、後から追加するパッケージなんだからさぁ(ぐちぐち)

で、インストールするわけですが、私が最新版を入れないのは・・・
失敗したから。
で、gccの失敗>コンパイルできない>致命傷(+д+)マズーだったから。
最新版いれた人の手順書が見てみたいわ(ー。ー;)ふぅ
「最小構成」
大きいところで言うとgccとperlが最小構成らしいです。
まぁ、他のパッケージも完全なものはないと思いますが・・・
他への影響力が強いパッケージくらいちゃんとしたのを入れててほしいなぁ・・・と。
smtp authのときにこける(可能性がある)ための導入だから、
(設定が悪かっただけで)本当はちゃんとした(使える)ものなのかもしれないけどね。

やること一覧
	・binutilsのインストール
gccのインストール211のメモ帳: 玄箱のgccを作り直す



binutilsのインストール

アセンブラを弄るツールらしい・・・
まぁ、事前準備ってやつ?

binutils-2.16.1.tar.gzを探してくる。
Index of /pub/GNU
で、ユーザーのホームディレクトリにFFFTPで送る。
例のあれ

	$ tar xvfz binutils-2.16.1.tar.gz
	$ cd binutils-2.16.1
	$ ./configure --prefix=/usr
	$ make
	$ make check
	# make install
おまじない
	# cd /usr/bin
	# cp strip strip_cp
	# ./strip_cp -p strip
	# strip -p ld gprof as c++filt nm readelf addr2line objcopy ranlib strings ar objdump size
	# rm strip_cp
		注:stripは自分自身をstripできない(らしい)ので、変な処理をしている
「binutils」
これをインストールすると./configureのときのシステム名がpowerpc-unknown-linux-gnuになります。
まぁ、だからどうした?って、訳じゃないけど・・・
結構、重要なソフトなんだろうなぁ・・・と。
だからどうした?って、訳じゃないんだけどね。

ちなみに2.17を利用するとstrip時に謎のメッセージが出ます。
気持ち悪いので2.16.1の利用を推奨します(?)

gccのインストール

玄箱での数少ない情報を使った方法。

gcc-2.95.3.tar.gzを探してくる。
Index of /pub/GNU
で、ユーザーのホームディレクトリにFFFTPで送る。
例のあれ

	[# ln -s /usr/bin/true /bin/true]
	$ tar xvfz gcc-2.95.3.tar.gz
	$ cd gcc-2.95.3
	$ ./configure --prefix=/usr [--enable-languages=c,c++]
	$ make CC=gcc [LANGUAGES="c c++"] [>make.log 2>&1 &]or[2>&1 | tee make.log]
		注:全機能(--enable-languages=c,c++またはLANGUAGES="c c++"の指定なし)を
		  makeすると死ぬほど時間がかかる
		  仕掛けたら寝ようw
		蛇足:
		 CとC++コンパイラのみ作る
		   画面を見ない
		 	$ make CC=gcc LANGUAGES="c c++" >make.log 2>&1 &
		   画面を見る
		 	$ make CC=gcc LANGUAGES="c c++" 2>&1 | tee make.log
		 全部のコンパイラを作る
		   画面を見ない
		 	$ make CC=gcc >make.log 2>&1 &
		   画面を見る
		 	$ make CC=gcc 2>&1 | tee make.log
		なんか出た・・・
		┃thr.c		..linked
		┃creating cache ./config.cache
		┃checking if compiler cc1obj has been built... no
		┃rmdir: `libobjc': Directory not empty
		まぁ、いいか・・・(え?
	# make install
		注:玄箱純正gccを上書きする(玄箱純正gccは抹殺される)

おまじない
	# cd /usr/bin
	# strip -p gcc powerpc-unknown-linux-gnu-gcc cpp gcov protoize unprotoize \
	gcj gcjh jcf-dump jv-scan c++ c++filt g++
gccはソースから適当にgccを作って(stage1)、
そのgccを使って再度gccを作って(stage2)、
さらに2度目のgccでgccを作って(stage3)、
2回目と3回目を前後比較して(compare)一致したならOKで、
ようやくインストールできるらしい・・・(めんd・・・
「gcc」
GNUコンパイラコレクションというらしい。
昔はCコンパイラだったらしい。
昔はインストールが面倒だったらしいけど、今は全自動らしい。
よく判らないけど、そんなものらしい。


戻るなら押せ!