Bonjour.
Je suis face à un problème douteux dont la source m'est pour l'instant inconnue :
Bon, le fait est que je viens de mettre à jour Ubuntu de 11.04 à 11.10 et beaucoup de choses en même temps ont changé sur mon système ce qui ne facilite pas les choses, entre autres :/prog/lib/libprogQt.so: undefined reference to `double prog::int_pow<double>(double const&, int const&)'
/prog/lib/libprogQt.so: undefined reference to `prog::Unit::getLengthScale(prog::Unit::LengthUnit const&)'
- update de g++
- update de CMake
- update de Qt
Avant ça le logiciel sur lequel je travaille compilait parfaitement, mais maintenant, c'est le drame.
La structure des dossiers et le système de compilation est le suivant (le nom de mon programme a ici été remplacé par prog) :
Mon problème est que mes librairies compilent sans problème, mais l'application elle me génère le bug que j'ai mis au tout début du topic. Mais ce que je comprends encore moins c'est que "getLengthScale" n'est PAS utilisée dans "/prog/src/progQt" mais dans "prog/src/prog".Dossier racine de mon projet, où j'exécute CMake :
/prog/
Sources de mon programme, dans différents dossiers
/prog/src/prog
/prog/src/progQt
Chacun des sous dossiers de /prog/src est compilé pour produire une bibliothèque du nom correspondant dans /prog/lib. J'obtiens donc :
/prog/lib/libprog.so
/prog/lib/libprogQt.so
Enfin j'ai un répertoire /prog/app/ avec des applications qui sont compilées dans /prog/bin. L'application que j'essaye de compiler s'appelle GuiTest (les sources sont donc dans /prog/app/GuiTest) et fait appel aux librairies :
/prog/lib/libprog.so
/prog/lib/libprogQt.so
J'ai plusieurs questions :
1) Selon vous est-ce lié à la compilation des bibliothèques (tout se passe bien à ce moment là pourtant), à la compilation de l'application ou au linkage de l'application avec les bibliothèques ?
2) Comment résoudre ce problème (où comment tenter d'en savoir plus sur son origine ?)
Partager