Précédent   Forum des professionnels en informatique > Systèmes > Linux > Distributions > Mandriva
Mandriva Vos questions sur la distribution Mandriva (Mandrake)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/12/2006, 21h19   #1
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 0
Points : 0
Par défaut Problème de lien: ld: cannot find -lgcc_s

Sur mandriva 2007
Voici un exemple simple

[claude@linuxmsi essai]$ more toto.c
int toto()
{
return 1234;
}
[claude@linuxmsi essai]$ gcc -o toto.o toto.c
[claude@linuxmsi essai]$ ar rv libtoto.a toto.o
r - toto.o
[claude@linuxmsi essai]$ gcc -r libtoto.a -o libtoto.o
/usr/bin/ld: cannot find -lgcc_s
collect2: ld returned 1 exit status
[claude@linuxmsi essai]$

Qui a une idée pour résoudre le problème? J'ai joué avec la variable LD_LIBRARY_PATH sans succès (/lib /usr/lib /usr/local/lib)
the_claude est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2006, 12h58   #2
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Dans /lib, j'ai :
-rwxr-xr-x 1 root root 42660 nov 11 03:18 libgcc_s-4.1.2.so.1*
lrwxrwxrwx 1 root root 19 nov 26 22:26 libgcc_s.so.1 -> libgcc_s-4.1.2.so.1*
Dans/usr/lib :
lrwxrwxrwx 1 root root 23 nov 26 22:28 /usr/lib/libgcc_s.so -> ../../lib/libgcc_s.so.1*
et /usr/local/lib est vide...
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2006, 22h30   #3
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 0
Points : 0
Merci de votre réponse.
Avez vous essayé le petit exemple ?
Retrouvez vous le même défaut ?
Salutations
the_claude est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2006, 22h46   #4
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Je ne connais rien du tout à ce que tu as fait !
Cet après midi, j'ai monté un vieux PC en mdv 2007 et j'ai sauvé avec ce dernier mon DD de musique : http://www.developpez.net/forums/sho...d.php?t=246680
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2006, 16h58   #5
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 0
Points : 0
Je serais interressé de savoir si le problème est reproductible sur une autre machine. Il suffit avec un éditeur comme kwrite de taper le contenu suivant dans un fichier nommé toto.c

int toto()
{
return 1234;
}


puis de taper successivement dans une fenêtre terminal les commandes suivantes:

gcc -o toto.o toto.c

cette commande rend la main sans message (si le fichier toto.c contient exactement les 3 lignes décrites ci-dessus)
puis la commande:

ar rv libtoto.a toto.o

cette commande doit renvoyer le message r - toto.o

et enfin la commande:

gcc -r libtoto.a -o libtoto.o

ce qui m'interresse c'est le résultat envoyé par cette dernière commande ???

Merci d'avance pour votre aide !
Salutations
the_claude est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2006, 17h09   #6
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Code :
1
2
3
4
5
6
7
[troumad@localhost][~/tmp]$ vi toto.c
[troumad@localhost][~/tmp]$ gcc -o toto.o toto.c
/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.2/../../../crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status
[troumad@localhost][~/tmp]$ ll toto*
-rw-r--r-- 1 troumad troumad 30 déc  7 17:07 toto.c
Et pas de toto.o
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2006, 21h13   #7
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 0
Points : 0
Dans la précipitation j'ai oublié un -c

La 1ere commande est

gcc -o toto.o -c toto.c

Le reste est bon si ce n'est la faute d'orthographe "intéressé"

Salutations
the_claude est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2006, 20h45   #8
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Code :
1
2
3
[troumad@portable][~/tmp]$ gcc -r libtoto.a -o libtoto.o
/usr/bin/ld: ne peut trouver -lgcc_s
collect2: ld returned 1 exit status
Et ce sous debian sid (j'ai cassé ma mandriva cooker).
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2006, 21h13   #9
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 0
Points : 0
C'est très interressant car cela semble être un bug du dernier compilateur gcc. J'ai trouvé le problème en changeant de version de linux. Avec un compilateur plus ancien je n'avais pas de soucis. Cela ne semble pas lié à la distribution car j'avais essayé la SUSE 10.1 et c'était la même chose. De même la DEBIAN présente le défaut.
J'ai posté un incident au support MANDRIVA mais il n'a pas daigné me répondre.
Merci de votre aide car cela m'a permis de dédouaner sur 3 exemples un éventuel problème d'installation.
Salutations
the_claude est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 14h34   #10
Rédacteur/Modérateur
 
Avatar de troumad
 
Homme Bernard SIAUD
Enseignant
Inscription : novembre 2003
Messages : 4 400
Détails du profil
Informations personnelles :
Nom : Homme Bernard SIAUD
Âge : 44
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : novembre 2003
Messages : 4 400
Points : 4 944
Points : 4 944
Vous voulez que je fasse un test sur une Mandriva 2006 ? Je n'ai pas encore migré le PC de ma femme !
__________________
Modérateur Mandriva Linux
Amicalement VOOotre
Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
Mes tutoriels
troumad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 18h25   #11
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 0
Points : 0
J'ai peur d'abuser, mais j'ai posté un nouvel incident chez MANDRIVA et effectivement cela pourrait être un élément d'investigation.
Mais je ne fais pas d'illusion car la dernière version connue de gcc avec laquelle mon programme se compilait était la 2.9.5. Or entre la 2.9.5 et la 4.1.2 il y'a du y avoir un paquet de versions.
Cordialement.
the_claude est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h42.


 
 
 
 
Partenaires

Hébergement Web