GLIBC のアップグレードで何が問題になるのでしょうか?

GLIBC のアップグレードで何が問題になるのでしょうか?

私は最近、来年 9 月に開始される研究プロジェクトのために私のグループが必要とするソフトウェアをインストールしました。そのソフトウェアには、glibc 2.12.1 で使用するとクラッシュする既知のバグがあることがわかりました。上司から、そのソフトウェアを実行する予定のサーバーで glibc をアップグレードできるかどうか尋ねられました。私の懐疑的な沈黙のきっかけは....

ある時点で、glibc をいじるのは空腹のピューマをいじるのと同じくらい良い考えだと思いつきました。しかし、この考えの根拠を突き止めることはできませんでした。そこで、これを実行するとします。

  1. 私は何か非常に愚かなことをしているのでしょうか (例えば、問題を解決しない、サーバーを壊す、ゾンビの黙示録を起こすなど)?
  2. 何が問題になるのでしょうか?
  3. 何が問題になる可能性があるでしょうか?
  4. 2 と 3 の回答を避けるにはどうすればよいですか?

答え1

多くの場合、より新しい libc をコンパイルして、あるソフトウェアで他のすべてのソフトウェアとは異なるライブラリを使用することが可能です。

libc バージョン間の最大の問題点は、私の記憶が正しければ、スレッド ローカル ストレージです。このマイルストーンを通過した場合は、すべてが台無しになります。

とはいえ、ディストリビューションを最新のものにアップグレードすることを強くお勧めします。断片的なアップグレードを行うと、何ヶ月も苦労するような苦痛に陥る可能性があります。

答え2

参照するには互換性表バイナリ互換バージョンを決定します。

通常、glibc を新しいバージョンにアップグレードしても問題はありませんが、ディストリビューションで使用されているのと同じ構成フラグを使用してビルドする必要があります (適切な SRPM パッケージの spec ファイルを参照)。

ここに画像の説明を入力してください

関連情報