別のglibcバージョンでApacheをコンパイルする

別のglibcバージョンでApacheをコンパイルする

私のシステムは以前のglibcバージョンです。新しいバージョン[2.23]を/FaF/glibc

新しいバージョンはSLES 11 SP2およびSP3と互換性がないため、私のプログラムで新しいバージョンを使用するにはglibcリンカスイッチ[]を使用する必要があります。--rpath=/FaF/glibc/libこれは非常にうまく動作します!

glibcld.so.confgすべてのシステムプログラムが新しいバージョンをロードしようとし、システムがglibcひどくクラッシュするため、ファイルに新しいバージョンのパスを設定できません。

私の質問:glibcスイッチを使用して新しいバージョンのApacheをコンパイルする方法はありますか--rpath

ベストアンサー1

最終的な答えは次のとおりです。Apacheビルドドキュメント - 環境変数

私の場合、非常に深刻な問題は、私のシステム[SLES 11 SP2]がglibcバージョン2.23でクラッシュしたことです。

glibcこれは、ファイル内の新しいライブラリへのパスを設定できないことを意味しますld.so.conf

私にとって唯一の解決策は$LDFLAGS configure時間を実行makeシステムがApacheとすべての新しいライブラリを正しい順序でロードし、ローダーを明示的に設定できるように、次の値を使用します。

export LDFLAGS="-L/FaF/lib64 -L/FaF/glibc/lib -L/FaF/openssl-curl/lib 
       -Wl,--rpath=/FaF/glibc/lib -Wl,--rpath=/FaF/lib64
       -Wl,--rpath=/FaF/lib -Wl,--rpath=/FaF/openssl-curl/lib
       -Wl,--rpath=/usr/local/lib64/ -Wl,--rpath=/usr/lib64
       -Wl,--rpath=/lib64/ -Wl,--dynamic-linker=/FaF/glibc/lib/ld-linux-x86-64.so.2"

新しいバージョンを使用するすべてのglibcプログラムは/FaF

おすすめ記事