#1 Le 31/10/2006, à 22:32
- Antartika
Linkage statique et version du noyau
Bonjour,
Je développe une librairie dynamique qui utilise la libcurl.
Je suis récemment passé à Edgy et j'ai donc le noyau generic.
Sur mon ordi, que j'utilise une vieille version de mon .so (fait quand j'etais encore sous dapper) ou une que je viens de compiler, pas de problème les 2 fonctionnent.
En revanche, quand je mets un .so fraichement compilé sur le serveur auquel il est destiné, il ne se charge pas. Par contre un ancien .so fonctionne.
De plus un .so fraichement compilé mais n'utilisant pas la libcurl fonctionne sur le serveur.
Je précise que entre les 2 versions, le code source et le makefile sont identiques.
Donc j'aurai voulu savoir si mon problème venait du fait que j'utilise le noyau generic (ce que je commence à soupconner vraiment) et si c'est le cas comment y remédier (option de compilation, choix du noyau au boot... )
J'espere avoir été assez clair Si tel n'est pas le cas n'hésitez pas à demander des précisions.
Merci pour votre aide.
Dernière modification par Antartika (Le 31/10/2006, à 22:33)
Hors ligne
#2 Le 31/10/2006, à 22:35
- Link31
Re : Linkage statique et version du noyau
Es-ce que les deux so ont été compilés avec la même version de gcc ?
Tu peux aussi vérifier l'état des librairies dynamiques avec ldd /usr/lib/libta_librairie.so.
Dernière modification par Link31 (Le 31/10/2006, à 22:35)
Hors ligne
#3 Le 31/10/2006, à 22:43
- Antartika
Re : Linkage statique et version du noyau
Oui les deux sont compilés avec la version 3.4 de gcc.
Et ldd renvoie bien les mêmes dépendances pour tout les .so.
Hors ligne
#4 Le 31/10/2006, à 23:12
- Link31
Re : Linkage statique et version du noyau
Les mêmes dépendances d'accord (le contraire serait surprenant vu que tu as le même code et le même Makefile...). Mais sont-elles satisfaites sur le serveur ? ldd indique not found si certaines librairies sont manquantes.
Hors ligne
#5 Le 31/10/2006, à 23:22
- Antartika
Re : Linkage statique et version du noyau
Le problème c'est que je n'ai pas accès à la console du serveur...
Je disais les mêmes dépendances entre la version dapper et la version edgy.
Comme la version dapper marche ça devrait vouloir dire qu'il trouve toutes les dépendances sur le serveur.
Par contre avec le version Edgy ça marche pas
Hors ligne
#6 Le 01/11/2006, à 09:49
- ffomnislash
Re : Linkage statique et version du noyau
il faudrait que tu ai acces a la console, ca serait beaucoup plus simple quand mm.
-- Mon blog --
Hors ligne
#7 Le 01/11/2006, à 11:00
- Antartika
Re : Linkage statique et version du noyau
Ben à la limite j'y ai accès en utilisant la fonction system(); mais j'ai testé ldd ne semble pas installé sur le serveur
Hors ligne
#8 Le 02/11/2006, à 10:25
- Antartika
Re : Linkage statique et version du noyau
J'ai pu faire un ldd sur un serveur
Voici l'erreur que j'ai:
./acpsource_i486.so: /lib/tls/libc.so.6: version `GLIBC_2.4' not found (required by ./acpsource_i486.so)
Quand je tappe sur le serveur:
/lib/libc.so.6
GNU C Library stable release version 2.3.4, by Roland McGrath et al.
Sur ma machine:
/lib/libc.so.6
GNU C Library development release version 2.4, by Roland McGrath et al.
/lib/libc-2.4.so
GNU C Library development release version 2.4, by Roland McGrath et al.
J'ai donc une différence de librairie qui me fait planter la chose.
Serait il possible d'installer une ancienne version de la libc sur mon ordi?
J'ai recherché libc dans mon gestionnaire de paquet, j'ai rien vu de probant
Merci pour votre aide
Hors ligne
#9 Le 02/11/2006, à 16:37
- Link31
Re : Linkage statique et version du noyau
Serait il possible d'installer une ancienne version de la libc sur mon ordi?
Je ne crois pas. Quand j'ai essayé de passer de la 2.4 à la 2.3.6 pour les mêmes raisons (sous Gentoo), voilà ce que j'ai obtenu :
Sanity check to keep you from breaking your system:
Downgrading glibc is not supported and a sure way to destruction
aborting to save your system
Donc je te conseillerais d'installer la Glibc 2.4 sur ton serveur, à moins que tu ne veuilles prendre la "voie de la destruction"
Hors ligne
#10 Le 02/11/2006, à 16:48
- Antartika
Re : Linkage statique et version du noyau
Je ne peux malheureusement pas faire grand chose sur le serveur.
Je pense installer une version serveur de dapper sur mon ordi, si toute fois on pouvait me confirmer la version de GLIBC présente dessus. (j'ai pas trop de doute la dessus mais on sait jamais )
EDIT: on m'a confirmé sur IRC qu'il s'agit de la 2.3.6 sous dapper
Dernière modification par Antartika (Le 02/11/2006, à 17:39)
Hors ligne
#11 Le 03/11/2006, à 16:08
- Antartika
Re : Linkage statique et version du noyau
Je me suis fait une install de dapper-server sur mon ordi perso et ça marche nickel
Merci pour votre aide
Hors ligne