GNATのインストールがうまくいかない
やっぱGNU makeはいろいろやばい もうおわこんだろ・・・
というのもGNATのビルドプロセスを追ってみればわかる。例えばGCC 4.4が入ってる環境でGCC 4.5をビルドしようとする。ちなみに各コマンドは同一シェル内で実行する。
あと、4.4のインストールされているところとは違うディレクトリにインストールする。つまり、/usr/bin/gcc-4.4 -> /usr/bin/gccだとして、--prefix=/usr/localとする。
./configure --prefix=/usr/local ... && make
↓ ← 現在のGNAT 4.4を使う
make install
↓ ← GNAT toolsのインストールが行われる (GNAT 4.5は確かにインストールされるが、現在のシェルは4.4を呼びに行く
↓ ← GNATの何かをここでビルドする (なぜ?なぜインストールプロセス中に行う?これがよくわからん
↓ ← ビルドする際に、当然GNATはmake内で起動されるのでそれまでのシェルを使用してても4.5のGNATを呼びに行く
↓ ← GNATの吐くオブジェクトファイルはマイナーバージョンごとに互換性がなくなるらしくmake時に使用したGNAT 4.4とビルドしたGNAT 4.5をつなげようとしてエラー
→ 樹海
互換性がなくなるのはまぁいいんだ、まぁそこは許容するとして、インストールプロセス中にビルドするなよ...
あと、壊滅的な問題。configureでみんな--program-suffix=-4.5とかすると思うんだけど、GNATはこれを無視するんDa☆
やめてくれ... contributorはどうやってインストールしてるんだ・・・
誰か知ってる人・・・お願いいたします・・・