En changeant de mot clé, Google m’a trouvé 2 solutions :
1ère solution, la plus simple :
* Compiler et lier avec les informations de débogage (gcc *.o -o program.dbg)
* Alléger le fichier (strip -o program program.dbg)
* Eventuellement alléger le fichier contenant les informations de débogage (strip -only-keep-debug program.dbg)
* Appeler gdb en fournissant les informations de débogage (gdb --exec=program --symbols=program.dbg) ou charger celles-ci à postériori (exec program et symbol program.dbg)
2ème solution, moins souple :
* Compiler et lier avec les informations de débogage (gcc *.o -o program)
* Extraire les informations de débogage (objcopy --only-keep-debug program .debug/program.dbg)
* Alléger le fichier (strip --strip-debug --strip-unneeded program)
* Créé une entrée .gnu_debuglink indiquant l’emplacement du fichier contenant les informations de débogage (objcopy --add-gnu-debuglink=.debug/program.dbg program)
* gdb trouve tout seul le fichier contenant les informations de débogage grâce à l’entrée créée précédemment, mais l’emplacement du fichier program.dbg ne peut être changé.
# Réponse à moi-même
Posté par Benoit . En réponse au message GCC et fichier de symboles. Évalué à 8.
1ère solution, la plus simple :
* Compiler et lier avec les informations de débogage (gcc *.o -o program.dbg)
* Alléger le fichier (strip -o program program.dbg)
* Eventuellement alléger le fichier contenant les informations de débogage (strip -only-keep-debug program.dbg)
* Appeler gdb en fournissant les informations de débogage (gdb --exec=program --symbols=program.dbg) ou charger celles-ci à postériori (exec program et symbol program.dbg)
2ème solution, moins souple :
* Compiler et lier avec les informations de débogage (gcc *.o -o program)
* Extraire les informations de débogage (objcopy --only-keep-debug program .debug/program.dbg)
* Alléger le fichier (strip --strip-debug --strip-unneeded program)
* Créé une entrée .gnu_debuglink indiquant l’emplacement du fichier contenant les informations de débogage (objcopy --add-gnu-debuglink=.debug/program.dbg program)
* gdb trouve tout seul le fichier contenant les informations de débogage grâce à l’entrée créée précédemment, mais l’emplacement du fichier program.dbg ne peut être changé.
En un mot : RTFM