Bonjour,
tout d’abord je tenais à vous remercier de prendre un peu de votre temps pour m’aider, c’est très gentil de votre part.
Je ne suis pas un expert des systèmes UNIX, j’ai simplement un problème très concret que je dois résoudre alors je vous prie de bien vouloir m’excuser si parfois je ne saisis pas du premier coup. Ceci dit si la question n’a pas d’intérêt on peut aussi arrêter la discussion ici. En attendant je vais essayer de faire le tour des solutions qui ont été proposées et que j’ai essayées :
*) J’ai installé le paquet glibc-doc comme me l’a conseillé Sirilam et effectivement on a bien accès aux fichiers “ChangeLog” mais en effectuant la même recherche je tombe sur :
[code]1999-11-12 Ulrich Drepper drepper@cygnus.com
- locale/C-ctype.c: Fix typo in char class name.
-
configure.in: Allow user so specify --enable-kernel=current.[/code]
En ignorant la coquille, je comprends cela comme l’ajout d’un nouveau mot clé “current” pour l’option “–enable-kernel”, mais ça ne nous dit pas si c’est bien cette option qui a été utilisée lors de la compilation. Dans le fichier changelog.Debian on voit une mention sur le fait d’utiliser l’option “–enable-kernel” mais sans plus de précisions.
*) Je ne vois pas de mention à une compatibilité ascendante générale dans la documentation, même s’il existe effectivement certaines fonctions qui sont conservées pour cela. D’après ce que j’ai compris l’option “–enable-kernel” vise justement à limiter l’ajout de morceaux de code qui sont destinés à maintenir une compatibilité ascendante.
*) Je n’ai pas compris comment utiliser sed pour faire la modification, à quel(s) fichier(s) faut il appliquer cette commande.
*) Merci à eol et lol pour le conseil sur le site patch-tracker.debian.org/patch/d … /2.11.2-10). On peut y trouver les options qui ont été utilisées lors de la compilation des sources (enfin je crois), j’ai délibérément sauté certains passage pour que cela soit plus lisible :
[code]— eglibc-2.11.2.orig/debian/sysdeps/linux.mk
+++ eglibc-2.11.2/debian/sysdeps/linux.mk
@@ -0,0 +1,51 @@
[…]
+MIN_KERNEL_SUPPORTED := 2.6.18
[…]
+# Minimum Kernel supported
+with_headers = --with-headers=$(shell pwd)/debian/include --enable-kernel=$(call xx,MIN_KERNEL_SUPPORTED)
[…]
+CURRENT_KERNEL_VERSION=$(shell uname -r)
+define kernel_check
+(minimum=$$((echo $(1) | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1 \* 65536 + \2 \* 256 + \3/'
));
+current=$$((echo $(CURRENT_KERNEL_VERSION) | sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1 \* 65536 + \2 \* 256 + \3/'
));
+if [ $$current -lt $$minimum ]; then \
Ce qui me permet d’expliquer pourquoi j’ai rencontré cette erreur. Du coup je pourrais également prévoir à l’avance en fonction de l’évolution des deux machines si une application compilée sur l’une fonctionnera sur l’autre.
Merci à tous pour votre aide très précieuse.
PS : une chose que j’ai oublié, si on exécute /lib/libc.so.6 on obtient quelques informations sur le système qui a servi à compiler la librairie, ça n’a pas résolu mon problème mais j’ai pensé le mettre ici si ça peut aider quelqu’un qui tombe sur ce sujet.
GNU C Library (Debian EGLIBC 2.11.2-10) stable release version 2.11.2, by Roland McGrath et al.
[...]
Compiled by GNU CC version 4.4.5.
Compiled on a Linux 2.6.32 system on 2011-01-23.
Available extensions:
crypt add-on version 2.1 by Michael Glad and others
GNU Libidn by Simon Josefsson
Native POSIX Threads Library by Ulrich Drepper et al
BIND-8.2.3-T5B
[...]