Linker un programme

Résolu/Fermé
RMEU Messages postés 31 Date d'inscription mercredi 10 avril 2013 Statut Membre Dernière intervention 10 novembre 2014 - Modifié par mamiemando le 25/11/2013 à 20:15
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 13 déc. 2013 à 22:33
Bonjour,

Je veux compiler et linker un programme. La compilation se passe bien, mais le link pas du tout; il sort un tas d'undefined reference concernant des manipulations de String. Quelle librairie dois-je spécifier en input (sur la ligne de commande ) pour éliminer ces erreurs?
Merci d'avance

7 réponses

mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
Modifié par mamiemando le 25/11/2013 à 10:52
Peux-tu nous reporter le message d'erreur exact (ainsi que les headers utilisés dans le(s) fichier(s) faisant appel à la fonction ntas ?

Supposons que ntas soit founie par la librairie libtoto.so, alors la ligne de compilation pour linker sera du genre :

gcc -W -Wall main.c -o programme -ltoto

Bonne chance
0
RMEU Messages postés 31 Date d'inscription mercredi 10 avril 2013 Statut Membre Dernière intervention 10 novembre 2014
25 nov. 2013 à 11:06
En fait, le programme principal inlut <exception> et <iostream>.
Ce programme fait appel à ine librairie composée d'un seul module et celui-ci inclut string.h.
la compilation se passe bien pour les 2 entités, la librairie et le module. C'est au moment du link (ld) que celui-ci sort des erreurs telles aue : undefined reference to 'std::basic_string<char, std::char_traits<char>, std:allocator<char> >::assign(char const *)
Il semble qu'il me manque une librairie en input du linker. Mais laquelle?

Merci d'avance
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
25 nov. 2013 à 20:16
Tu compiles bien avec g++ ?
0
RMEU Messages postés 31 Date d'inscription mercredi 10 avril 2013 Statut Membre Dernière intervention 10 novembre 2014
27 nov. 2013 à 08:10
Bonjour,

oui, je compile avec g++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
28 nov. 2013 à 19:57
Peux-tu nous donner un exemple minimal de code provoquant cette erreur (idéalement le code source de ton programme et un makefile que tu peux mettre en partage sur un site quelconque) et nous indiquer quelle version de g++ tu utilises.

dpkg -l | egrep '(c|g)\+\+'

Essaye aussi de voir si une mise à jour ne résout pas le problème.

Bonne chance
0
RMEU Messages postés 31 Date d'inscription mercredi 10 avril 2013 Statut Membre Dernière intervention 10 novembre 2014
13 déc. 2013 à 08:03
Bonjour,

Désolé de répondre si tardivement (vacances). J'ai trouvé, il s'agissait d'une erreur de ma part.
Merci pour vos recherches et vos efforts

Bonne journée
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
13 déc. 2013 à 22:33
Ok bonne continuation !
0