web-dev-qa-db-ja.com

新しいglibcバージョンを古いカーネルで使用できますか?

どうやらglibcは--enable-kernel古いカーネルバージョンをサポートします。しかし、私は特定のglibcバージョンでサポートされているカーネルバージョンに関する情報を見つけることができませんでした。理想的には、すべてのglibc(2.x)およびカーネル(2.6.x)リリースの互換性マトリックスを確認したいと思います。存在しますか?

それが存在しない場合、それはおそらくすべてのglibcバージョン(過去5年程度)が2.6.0以降のすべてのカーネルをサポートしているためでしょうか?

(それが重要な場合は、Arch = x86-64)

18
netvope

glibcの一部のバージョンでは、互換性のあるカーネルバージョンが発表されます。

glibc    Released      Kernel
----------------------------------------------------------

2.27     2 Feb 2018    (same as 2.26?)
2.26     2 Aug 2017    3.2
2.25     5 Feb 2017    (same as 2.24?)

2.24     4 Aug 2016    on i[4567]86 and x86_64  ->  2.6.32
2.24     4 Aug 2016    on other platforms       ->  3.2

glibcの古い(または新しい)バージョンのアナウンスメールをさらに追跡して読むことにより、上記の表を拡張できる場合があります。

参考のため:

Linux distribution    glibc version

Debian 9 Stretch      2.24
Debian 10 Buster      2.27 (as of March 2018).

Ubuntu 16.04          2.23
Ubuntu 16.10          2.24
Ubuntu 17.04          2.24
Ubuntu 17.10          2.26
Ubuntu 18.04          2.27

出典:
GNU Cライブラリ(glibc)
GNU Cライブラリバージョン2.27が利用可能になりました
GNU Cライブラリバージョン2.26が利用可能になりました
GNU Cライブラリバージョン2.25が利用可能になりました
GNU Cライブラリバージョン2.24が利用可能になりました
DistroWatch.com:Ubunt

10
mpb

プロジェクトの [〜#〜] readme [〜#〜] によると、2.4カーネルでglibcを使用できますが、一部の機能が失われます。

Linuxカーネルを使用する場合、GNU Cライブラリバージョン2.4は、主にLinuxカーネルバージョン2.6.0以降での使用を目的としています。現在サポートされているpthreadのNPTL実装の使用のみがサポートされています。ほとんどのCライブラリは古いLinuxカーネルで引き続き動作し、多くのプログラムでは2.6カーネルを正しく実行する必要がありません。ただし、pthreadと関連機能は古いカーネルではまったく動作しないため、glibcの使用はお勧めしません。 2.4 2.6より前のLinuxカーネル。

ご了承ください --enable-kernel=VERSION 手段:

vERSIONより古いカーネルとの互換性のためにコンパイルする

4
tshepang