- 78 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:26:09 ]
- コードとかの問題じゃないけど、わかる人いたら回答おね。
GCC4.4を--prefix=/opt --program-suffix=-4.4のOPTで自己ビルドインスコ。 これでいくとlibstdc++.so.6とlibgcc_s.so.1が/opt/lib64ディレクトリにできるんだけど、 問題はコンパイルしたアプリがこれらを参照しないでUbnuntu9.04のGCC4.3とセット物の/usr/lib配下の 物を参照してる。アプリをコンパイル時にLD_RUN_RATHに/opt/lib64をつけても変わらない。 ちなみに/opt/lib64/libstdc++.so.6は/opt/lib64/libstdc++.so.6.0.12へ、/usr/lib/libstdc++.so.6は /usr/lib/libstdc++.so.6.10へのリンクだからバージョン違ってる・・ /etc/ld.so.confに/opt/lib64を追記すると両方共それを参照するけど、そうなるとシステム全部のアプリが (Ubuntuのgcc4.3でコンパイルされてる)全部gcc4.4のを読んでしまう(lddコマンドの結果)。 そうなるとよくないですよね。なのでやめました。 実行アプリ毎にLD_LIBRARY_PATHをつける管理が面倒なのでGCC4.4でコンパイルしたアプリも現状の GCC4.3のlibstdc++とlibgcc_sを読ませておく状態で使用して何か後々問題出る可能性ありますか?
|

|