IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

problème de compilation Linux


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 11
    Par défaut problème de compilation Linux
    bonjour,

    Je suis bloqué depuis qq temps la dessus:

    Citation:
    /bin/mkdir -p exe ; /usr/bin/g++ -ansi -g -o exe/AgentSupervision ../../superviseur/idl/obj/AgentSupervision_c.o ../../superviseur/idl/obj/AgentSupervision_s.o obj/AgentSupervision.o obj/AgentSupervisionImpl.o obj/Ressources.o obj/RessourcesPosix.o ../../traducteurs/idl/obj/Traducteur_c.o ../../traducteurs/idl/obj/ExceptionsTraducteur_c.o obj/ServeurCalcul.o obj/GABASSession.o obj/RessourcesLinux.o -L../../lib -L../../superviseur/lib -lutilsuperviseur -lidlsl_c -lidlstruct -lidlexcept -lrpcsvc -lgab_r -lgaborb_r -lgaborbhelper -L/usr/lib -lTAO_IORTable -lTAO_PortableServer -lTAO_CosNaming -lTAO -lACE -ldl -lnsl -lTAO_Messaging -lgaborbhelper -L../../lib -lgab_r -lpthread
    obj/AgentSupervision.o: dans la fonction « main »:
    src/AgentSupervision.C:109: référence indéfinie vers « GABError::GABError(short, char const*, char const*)»
    obj/AgentSupervisionImpl.o.data.rel.ro._ZTV20AgentSupervisionImpl[vtable for AgentSupervisionImpl]+0x68): référence indéfinie vers « GABObject::throwException(long, char const*, char const*) const»
    obj/AgentSupervisionImpl.o.data.rel.ro._ZTV20AgentSupervisionImpl[vtable for AgentSupervisionImpl]+0x78): référence indéfinie vers « GABObject::print(unsigned long, _IO_FILE*) const»
    obj/AgentSupervisionImpl.o.data.rel.ro._ZTV20AgentSupervisionImpl[vtable for AgentSupervisionImpl]+0x80): référence indéfinie vers « GABObject::gabAddUserDependent(GABObject*, unsigned long, void (*)(GABObject*, GABObject*, void*, unsigned long), void*)»
    obj/AgentSupervisionImpl.o.data.rel.ro._ZTV20AgentSupervisionImpl[vtable for AgentSupervisionImpl]+0x90): référence indéfinie vers « GABObject::gabRemoveUserDependent(GABObject*, unsigned long)»
    obj/AgentSupervisionImpl.o.data.rel.ro._ZTV20AgentSupervisionImpl[vtable for AgentSupervisionImpl]+0xb0): référence indéfinie vers « GABObject::gabSysNotify(GABObject*, unsigned long)»
    obj/AgentSupervisionImpl.o.data.rel.ro._ZTV20AgentSupervisionImpl[vtable for AgentSupervisionImpl]+0xb8): référence indéfinie vers « GABObject::changed(unsigned long)»
    obj/AgentSupervisionImpl.o.data.rel.ro._ZTV20AgentSupervisionImpl[vtable for AgentSupervisionImpl]+0xc0): référence indéfinie vers « GABObject::stateText(long) const»
    obj/AgentSupervisionImpl.o.data.rel.ro._ZTV20AgentSupervisionImpl[vtable for AgentSupervisionImpl]+0x110): référence indéfinie vers « GABObject::classNotify(unsigned long)»
    Est ce quelqu'un peut m'expliquer ce que veut dire ce message d'erreur?

    Je vous remercie d'avance

  2. #2
    Expert confirmé

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 033
    Billets dans le blog
    12
    Par défaut
    C'est une erreur de link, ton problème doit venir du fait que tu fais des include venant d'une librairie extérieure (celle qui contient les fonctions et classes GAB***) par contre tu n'indiques pas au linker qu'il doit utiliser cette librairie, et il ne trouve donc pas les implémentations des classes et fonctions de cette librairie
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 11
    Par défaut
    Citation Envoyé par dragonjoker59 Voir le message
    C'est une erreur de link, ton problème doit venir du fait que tu fais des include venant d'une librairie extérieure (celle qui contient les fonctions et classes GAB***) par contre tu n'indiques pas au linker qu'il doit utiliser cette librairie, et il ne trouve donc pas les implémentations des classes et fonctions de cette librairie
    ces méthodes sont définies dans lgab_r ->>>

    /bin/mkdir -p exe ; /usr/bin/g++ -ansi -g -o exe/AgentSupervision ../../superviseur/idl/obj/AgentSupervision_c.o ../../superviseur/idl/obj/AgentSupervision_s.o obj/AgentSupervision.o obj/AgentSupervisionImpl.o obj/Ressources.o obj/RessourcesPosix.o ../../traducteurs/idl/obj/Traducteur_c.o ../../traducteurs/idl/obj/ExceptionsTraducteur_c.o obj/ServeurCalcul.o obj/GABASSession.o obj/RessourcesLinux.o -L../../lib -L../../superviseur/lib -lutilsuperviseur -lidlsl_c -lidlstruct -lidlexcept -lrpcsvc -lgab_r -lgaborb_r -lgaborbhelper -L/usr/lib -lTAO_IORTable -lTAO_PortableServer -lTAO_CosNaming -lTAO -lACE -ldl -lnsl -lTAO_Messaging -lgaborbhelper -L../../lib -lgab_r -lpthread

    j'indique bien le chemin? ou est ce que ça doit être en relatif?

  4. #4
    Expert confirmé

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 033
    Billets dans le blog
    12
    Par défaut
    Ton chemin est déjà en relatif, apparemment il trouve la lib (sinon le linker te râlerait dessus). Par contre, es-tu sûr que la lib que tu utilises est bien de la même version que les include que tu fais, sinon ça peut aussi venir (d'après mon expérience personnelle) d'un conflit Unicode/Multibyte ou d'un conflit Debug/Release, il doit certainement y avoir d'autres causes, mais je ne les ai pas encore rencontrées, donc tu peux au moins vérifier ces 3 là.
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Février 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 11
    Par défaut
    Citation Envoyé par dragonjoker59 Voir le message
    Ton chemin est déjà en relatif, apparemment il trouve la lib (sinon le linker te râlerait dessus). Par contre, es-tu sûr que la lib que tu utilises est bien de la même version que les include que tu fais, sinon ça peut aussi venir (d'après mon expérience personnelle) d'un conflit Unicode/Multibyte ou d'un conflit Debug/Release, il doit certainement y avoir d'autres causes, mais je ne les ai pas encore rencontrées, donc tu peux au moins vérifier ces 3 là.
    tu peux m'expliquer le premier point STP? je ne comprends pas la version de la lib par rapport à la version des includes?

  6. #6
    screetch
    Invité(e)
    Par défaut
    sous linux il n'y a pas de multibyte/unicode.

    elle vient d'ou cette bibliotheque gab_r?

Discussions similaires

  1. Problème de compilation wxwidgets sous Linux
    Par Zoloom dans le forum wxWidgets
    Réponses: 0
    Dernier message: 12/05/2008, 01h50
  2. Problêmes de compilation sous linux
    Par Micky_du_57 dans le forum GLUT
    Réponses: 4
    Dernier message: 25/05/2007, 20h37
  3. problème de compilation de code c sur linux
    Par bejaouijamil dans le forum C
    Réponses: 11
    Dernier message: 10/01/2007, 15h36
  4. Réponses: 7
    Dernier message: 10/11/2006, 14h33
  5. Réponses: 2
    Dernier message: 16/08/2006, 23h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo