Les nouvelles versions de glibc peuvent-elles être utilisées avec un ancien noyau?

18

Apparemment, la glibc peut être compilée --enable-kernelpour prendre en charge les anciennes versions du noyau. Cependant, je n'ai pas pu trouver d'informations sur les versions du noyau prises en charge sur une version particulière de la glibc . Idéalement, je veux voir une matrice de compatibilité pour chaque version de glibc (2.x) et de noyau (2.6.x). Existe-t-il?

S'il n'existe pas, c'est peut-être parce que toutes les versions de la glibc (au cours des 5 dernières années environ) prennent en charge tous les noyaux depuis 2.6.0?

(Arch = x86-64, si cela importe)

netvope
la source

Réponses:

7

Pour certaines versions de glibc, l'e-mail d'annonce indique quelles versions du noyau sont compatibles.

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

Il peut être possible d'étendre le tableau ci-dessus en recherchant et en lisant davantage d'e-mails d'annonce pour les versions plus anciennes (ou plus récentes) de glibc.

Pour référence:

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

Sources:
La bibliothèque GNU C (glibc)
La bibliothèque GNU C version 2.27 est maintenant disponible
La bibliothèque GNU C version 2.26 est maintenant disponible
La bibliothèque GNU C version 2.25 est maintenant disponible
La bibliothèque GNU C version 2.24 est maintenant disponible
DistroWatch.com: Ubuntu

mpb
la source
4

Selon le fichier README du projet, vous pouvez utiliser la glibc avec 2,4 noyaux, mais vous perdrez certaines fonctionnalités:

Lorsque vous travaillez avec des noyaux Linux, la bibliothèque GNU C version 2.4 est principalement destinée à être utilisée avec le noyau Linux version 2.6.0 et ultérieures. Nous prenons uniquement en charge l'utilisation de l'implémentation NPTL de pthreads, qui est maintenant la configuration par défaut. La plupart de la bibliothèque C continuera de fonctionner sur les noyaux Linux plus anciens et de nombreux programmes ne nécessiteront pas de noyau 2.6 pour fonctionner correctement. Cependant, pthreads et les fonctionnalités associées ne fonctionneront pas du tout sur les anciens noyaux et nous ne recommandons pas d'utiliser glibc 2.4 avec un noyau Linux antérieur à 2.6.

Notez que cela --enable-kernel=VERSIONsignifie:

compiler pour la compatibilité avec le noyau pas plus ancien que VERSION

tshepang
la source