linuxでglibc-2.14をアップグレードする問題

1561 ワード

問題
実行中binファイルの場合のヒント
libc.so.6: version GLIBC_2.14 not found

エラーこれはcentosシステムが安定性のために使用するcライブラリのバージョンが低いためです.
strings /lib64/libc.so.6 | grep GLIBC_

システムにインストールされているglibcバージョンを表示できます一般centosシステムは2.12にのみインストールされています.
glibc-2.14のインストール
ダウンロードアドレスにglibc-2.14バージョンをダウンロード
glibc-2.14を選択できます.tar.gz
ダウンロードした圧縮パッケージをディレクトリに配置します.たとえば、/home/ディレクトリは次のshellコマンドを実行し始めます.
[root@xxx home]# tar -xzvf glibc-2.14.tar.gz    //     
[root@xxx home]# cd glibc-2.14    //          
[root@xxx glibc-2.14]# mkdir build    //  build   
[root@xxx glibc-2.14]# cd build     //  build   
[root@xxx build]# ../configure --prefix=/opt/glibc-2.14    //   glibc     glibc-2.14     /opt/glibc-2.14(          ),        ,        
[root@xxx build]# make -j4     //        4   
[root@xxx build]# make install     //    

インストールが完了するまで待つ
glibcソフトチェーン
インストールが完了したら、glibc-2.14を指すソフトチェーンを確立し、次のコマンドを実行します.
$ rm -rf /lib64/libc.so.6           //       libc.so.6  
$ ln -s /opt/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6   //       

に注意
libcを削除する.so.6以降、システムコマンドが使用できなくなる場合があります.2.14のリンクを作成するには、次の方法を使用します.
$ LD_PRELOAD=/opt/glibc-2.14/lib/libc-2.14.so  ln -s /opt/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6

上記の更新に失敗した場合は、次のコマンドを使用して2.12バージョンに復元します.
$ LD_PRELOAD=/lib64/libc-2.12.so ln -s /lib64/libc-2.12.so /lib64/libc.so.6    

このときglibcをコマンドで確認すると、下部に新しくインストールされたGLIBC_が表示されます.2.14