CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[c++] Undefined reference to

The_Sodomisator
The_Sodomisator
Niveau 8
01 décembre 2018 à 21:27:53

Salut,

Je suis tombé sur el famoso erreur de linkage par excellence càd "...undefined reference to ..." le problème c'est que là je ne sais pas pourquoi..

l'intitulé de l'erreur exacte est :
g++ -std=c++11 -Wall -o main main.cpp expr.cpp exprSeq.cpp varExpr.cpp function.cpp sFunction.cpp /tmp/ccIEGmkZ.o: In function `sFunction::saveFunction(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': sFunction.cpp:(.text+0x495): undefined reference to `sFunction::list' collect2: error: ld returned 1 exit status makefile:7: recipe for target 'all' failed make: *** [all] Error 1

et le screen https://image.noelshack.com/fichiers/2018/48/6/1543695985-screenhelp.png

Mon code est loin d'être fini et je l'ai modifié pour faire des tests pour que ça marche ce qui explique la logique inexistante de ce bordel mais je ne trouve pas ce qui m'échappe. Merci :coeur:

The_Sodomisator
The_Sodomisator
Niveau 8
01 décembre 2018 à 21:36:11

edit:
g++ -std=c++11 -Wall -o main main.cpp expr.cpp exprSeq.cpp varExpr.cpp function.cpp sFunction.cpp /tmp/ccIEGmkZ.o: In function `sFunction::saveFunction(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': sFunction.cpp:(.text+0x495): undefined reference to `SpeFunction::list' collect2: error: ld returned 1 exit status makefile:7: recipe for target 'all' failed make: *** [all] Error 1

Je me suis gouré de copié/collé

sicarius201
sicarius201
Niveau 10
01 décembre 2018 à 21:53:56

La dernière ligne de ta fonction, tu peux directement mettre
list.push_back(...)
il me semble :(

The_Sodomisator
The_Sodomisator
Niveau 8
01 décembre 2018 à 21:55:23

Le 01 décembre 2018 à 21:53:56 sicarius201 a écrit :
La dernière ligne de ta fonction, tu peux directement mettre
list.push_back(...)
il me semble :(

Yes tu as raison mais ça change rien, il affiche exactement la même erreur

AtmelAVR
AtmelAVR
Niveau 4
01 décembre 2018 à 21:55:23

C'est parce que tu n'as pas défini la variable membre statique list
C'est un truc un peu chiant du C++. Il faut que t'ajoutes ça dans ton .cpp:

std::vector<FunctionVectorList> SpeFunction::list;

https://en.cppreference.com/w/cpp/language/static

Message édité le 01 décembre 2018 à 21:56:01 par AtmelAVR
The_Sodomisator
The_Sodomisator
Niveau 8
01 décembre 2018 à 21:59:05

Le 01 décembre 2018 à 21:55:23 AtmelAVR a écrit :
C'est parce que tu n'as pas défini la variable membre statique list
C'est un truc un peu chiant du C++. Il faut que t'ajoutes ça dans ton .cpp:

std::vector<FunctionVectorList> SpeFunction::list;

https://en.cppreference.com/w/cpp/language/static

Merci t'as résolu mon problème, c'est dingue je fais du c++ depuis quelques temps et je ne suis jamais tombé sur ce cas merci beaucoup en tout cas ! :coeur:

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment