gccの再インストール

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

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

で、愚痴ってもしかたないので、インストールするわけです。はい。
「最小構成」
大きいところで言うとgccとperlが最小構成らしいです。
まぁ、他のパッケージも完全なものはないと思いますが・・・
他への影響力が強いパッケージくらいちゃんとしたのを入れててほしいなぁ・・・と。

やること一覧
	・binutilsのインストールgccのインストール211のメモ帳: 玄箱のgccを作り直す
関連ページ
	・apache2gcc用コンパイルスクリプト



binutilsのインストール

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

binutils-2.18.tar.gzを探してくる。
Index of /pub/GNU/binutils/

例のあれ

	$ wget http://ftp.yz.yamagata-u.ac.jp/pub/GNU/binutils/binutils-2.18.tar.gz
	$ tar xvfz binutils-2.18.tar.gz
	$ cd binutils-2.18
	$ ./configure --prefix=/usr
	$ make
	$ make check
	# make install
インストールされるもの: install files list(default): use command is: ls -pR /usr/local >~/bin.txt

おまじない
	# cd /usr/bin
	# cp strip strip_cp && ./strip_cp -p strip && rm strip_cp
	# strip -p ld gprof as c++filt nm readelf addr2line objcopy ranlib strings ar objdump size
		注:stripは自分自身をstripできないので、変な処理をしている
		  &&はコマンドが成功したら次のコマンドを実行すると言う・・・やつ。
		  ||とするとコマンドが失敗したら次のコマンドを実行すると言う・・・事になる。
「binutils」
これをインストールすると./configureのときのシステム名がpowerpc-unknown-linux-gnuになります。
まぁ、だからどうした?って、訳じゃないけど・・・
結構、重要なソフトなんだろうなぁ・・・と。
だからどうした?って、訳じゃないんだけどね。

gccのインストール

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

thttpdが80ポートで動いているとコンパイルエラーを起こしてしまう謎現象があるので、
thttpdのポートを変更しておく。
やり方はapacheのthttpdのアクセスポート変更を参照。

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

	[# ln -s /usr/bin/true /bin/true]
	$ wget http://ftp.yz.yamagata-u.ac.jp/pub/GNU/gcc/gcc-2.95.3.tar.gz
	$ tar xvfz gcc-2.95.3.tar.gz
	$ cd gcc-2.95.3
	$ ./configure --prefix=/usr --enable-languages=c,c++
	$ make bootstrap
		

option説明など
bootstrapgccをコンパイルするときのおまじない(を

注:全機能(--enable-languages=c,c++の指定なし)をmakeすると死ぬほど時間がかかる   仕掛けたら寝ようw $ make -k check

option説明など
-k多少のエラーがあっても完走させる(まぁ、エラーはエラーだけどね)

# make install 注:玄箱純正gccを上書きする(玄箱純正gccは抹殺される)
インストールされるもの:
install files list(--enable-languages=c,c++): use command is: ls -pR /usr/local >~/bin.txt
install files list(default): use command is: ls -pR /usr/local >~/bin.txt

おまじない
	# cd /usr/bin
	(--enable-languages=c,c++)
	# strip -p gcc powerpc-unknown-linux-gnu-gcc cpp c++ g++ c++filt gcov protoize unprotoize

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

前のページ? 次のページ?


戻るなら押せ!