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 :

Erreur étrange lors de la compilation


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2013
    Messages : 52
    Points : 25
    Points
    25
    Par défaut Erreur étrange lors de la compilation
    Bonjour à tous,
    Lorsque je compile mon programme (avec make), j'obtiens les erreurs suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    make  all-am
    make[1]: Entering directory `/projet/lutte'
    g++  -g -O2   -o lutte  RC_parallel.o common.o lmz.o lut.o main.o operator.o perfMeasurement.o rcl.o rct.o sr.o txt_api.o -lstdc++
    perfMeasurement.o: In function `std::__simple_alloc<unsigned long*, std::__default_alloc_template<true, 0> >::allocate(unsigned int)':
    perfMeasurement.cpp:(.gnu.linkonce.t._ZNSt14__simple_allocIPmSt24__default_alloc_templateILb1ELi0EEE8allocateEj+0x1d): undefined reference to `std::__default_alloc_template<true, 0>::allocate(unsigned int)'
    perfMeasurement.o: In function `std::__simple_alloc<unsigned long, std::__default_alloc_template<true, 0> >::deallocate(unsigned long*, unsigned int)':
    perfMeasurement.cpp:(.gnu.linkonce.t._ZNSt14__simple_allocImSt24__default_alloc_templateILb1ELi0EEE10deallocateEPmj+0x1d): undefined reference to `std::__default_alloc_template<true, 0>::deallocate(void*, unsigned int)'
    perfMeasurement.o: In function `std::__simple_alloc<unsigned long, std::__default_alloc_template<true, 0> >::allocate(unsigned int)':
    perfMeasurement.cpp:(.gnu.linkonce.t._ZNSt14__simple_allocImSt24__default_alloc_templateILb1ELi0EEE8allocateEj+0x1d): undefined reference to `std::__default_alloc_template<true, 0>::allocate(unsigned int)'
    perfMeasurement.o: In function `std::__simple_alloc<unsigned long*, std::__default_alloc_template<true, 0> >::deallocate(unsigned long**, unsigned int)':
    perfMeasurement.cpp:(.gnu.linkonce.t._ZNSt14__simple_allocIPmSt24__default_alloc_templateILb1ELi0EEE10deallocateEPS0_j+0x1d): undefined reference to `std::__default_alloc_template<true, 0>::deallocate(void*, unsigned int)'
    collect2: ld returned 1 exit status
    make[1]: *** [lutte] Error 1
    make[1]: Leaving directory `/projet/lutte'
    make: *** [all] Error 2
    Je tiens à préciser que c'est un code qui m'a été envoyé, et que c'est la première fois que j'essaye de le compiler.
    J'ai regardé sur internet, et il se pourrait que ce soit un problème avec g++.
    Voici ma version :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    g++ (GCC) 4.1.2 20071124 (Red Hat 4.1.2-42)
    Merci d'avance pour votre aide !

  2. #2
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2013
    Messages : 52
    Points : 25
    Points
    25
    Par défaut
    Voici la réponse qui m'a parue la plus intéressante, mais que je n'ai pas vraiment comprise :
    This turned out to be a strange result where the system was mismatching gcc with a different binutils. /usr/bin/gcc was being used (3.2.3) and /usr/local/bin/ld was being used with it due to /usr/local/bin being in front of /usr/bin in the path. When we switched so that /usr/bin was at the front of the path, the appropriate /usr/bin/ld was called (binutils 2.14) and this seems to have resolved the problem.

  3. #3
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 145
    Points
    23 145
    Par défaut
    Bonjour,

    Je te conseillerais de mettre à jour ton compilateur (g++ en est à la version 4.8.2 si je ne me trompe pas), de nettoyer entièrement ton projet puis de tout recompiler.

    Pour la réponse que tu as trouvé, en gros, il a deux versions de "binoutil".
    Or ce n'était pas la bonne version qui était utilisée lors de l'édition des liens.

  4. #4
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2013
    Messages : 52
    Points : 25
    Points
    25
    Par défaut
    Ok, donc d'après ce que j'ai compris, ça pourrait être dû au fait que ma version de gcc et celle de binutils ne correspondent pas.
    Y'a t'il un moyen de savoir quelle version de binutils va avec quelle version de gcc?

Discussions similaires

  1. Erreur linkage lors de la compilation d'OpenSSL
    Par Fooshi dans le forum Visual Studio
    Réponses: 1
    Dernier message: 01/12/2010, 17h18
  2. Réponses: 1
    Dernier message: 12/08/2010, 16h56
  3. [Erreur fatale] lors de la compilation
    Par GSXR1000 dans le forum EDI
    Réponses: 3
    Dernier message: 27/10/2008, 22h38
  4. Réponses: 1
    Dernier message: 18/06/2008, 13h12
  5. Forms 6i : Erreur interne lors de la compilation
    Par Veve44 dans le forum Forms
    Réponses: 4
    Dernier message: 10/10/2005, 14h22

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