ZGCCの再構築

以前にパッケージしたZGCCは/usr/local直下に置くようにしてて、/usr/local/lib/gcc-lib/armv4l-redhat-linux/2.95.1のcc1、cppを/usr/local/binにシンボリックリンク、/usr/local/libの内容全てを/usr/libにシンボリックリンクしていた。
まあ、LD_LIBRARY_PATHに追加設定すれば、そんなシンボリックリンクはいらないんだけど、環境変数を設定するのが面倒なので上記のようにしていた。
だけど、tattsuu さんとこ(tattsuu.com - このウェブサイトは販売用です! -&nbsptattsuu リソースおよび情報)や、はたのさんとこ(http://zaurus.sarasarado.org/?Zaurus%2Fself)で、書き込み不可の / を読み書き可でマウントし直して、/usr/include を作って /usr 直下に GCC とかを入れるやり方が理想的だったので、ZGCC も /usr 直下に入れてみた。
無事、動いた〜。やっぱし、cc1やcpp、/usr/libへのシンボリックリンクの数々は無くても良いみたい。libc は例の stat 問題解決手順使って、libm だけ /lib からシンボリックリンク張っておいた。あとは gcc を cc で呼び出せるように。
ルートディレクトリのマウントし直しは考えた挙句、preinst で自動的行って、postrm で削除するようにしてみた。けど、パッケージング失敗。なんか、preinstのシェルスクリプトをミスったかな?素直に/usr/binや/usr/libの実体がある/home/root/usrに展開する方が良いカモ。
ところで、最初 libc.so のシンボリックリンクしないまま hello worldコンパイルしたら ld が -lc できないってエラー吐いた。当たり前(汗)で、libc.so って何だろう?と思ったら glibc なのねん。ついでに .so も共有ライブラリってことしか知らなかったので、調べてみるとわかりやすいトコ(コンピューター:C言語講座:共有ライブラリについて)があったのでお勉強。