Question

Je me sers de Code :: Blocks avec MinGW sur une boîte Windows XP pour un certain temps maintenant. Mais depuis que je commencé à utiliser Boost.Build comme « outil de construction personnalisé » Je vais avoir du mal à régler les points de rupture de Code :: Blocks. Quand je commence un code de session de débogage :: Blocks essaie d'envoyer tous les points de rupture à GDB mais GDB ne semble pas reconnaître les noms des sources:

Debugger name and version: GNU gdb 6.6
No source file named C:/xxx/CB-Workspace/altomo/src/main.cpp.
Breakpoint 1 ("C:/xxx/CB-Workspace/altomo/src/main.cpp:185) pending.

(Le xxx est seulement une abréviation)

Pour voir ce qui se passe j'ai commencé GDB manuellement et essayé de définir un point d'arrêt:

(gdb) break main.cpp:181
Breakpoint 1 at 0x40231e: file src/main.cpp, line 181.
(gdb) break src/main.cpp:182
Breakpoint 2 at 0x402331: file src/main.cpp, line 182.
(gdb) break "C:/xxx/CB-Workspace/altomo/src/main.cpp:185"
Breakpoint 3 at 0x402513: file src/main.cpp, line 185.

Tout semble correct. J'ai aussi veryfied que dans tous les fichiers * .o le chemin complet était présent.

La chose étrange est que le débogage utilisé pour travailler avant de passé à Boost.Build. Donc, je ne sais pas vraiment où regarder. Qui est à blâmer? Moi, Boost.Build, Code :: Blocks ou GDB? Est-ce que je manque quelques options de compilation évidentes ou les paramètres du projet CB w.r.t. chemins de recherche ou quelque chose?

Je voudrais continuer à utiliser Boost.Build comme outil de construction et Code :: Blocks pour l'édition et comme frontal GDB. Toute aide pour résoudre ce problème est apprécié.

Était-ce utile?

La solution

J'activé le journal de débogage de code :: Bloc pour voir ce que les commandes sont passées à GDB et il semble que le problème est avec Code :: Blocks. Il envoie un

directory C:/XXX~1/CB-WOR~1/altomo

pour GDB qui est le nom du répertoire « DOS mutilées ». GDB n'aime pas. Ainsi, il ressemble à un bogue dans Code :: Blocks pour moi.

Autres conseils

Essayez ceci:

(gdb) break main.cpp:185

Si GDB ne sait pas main.cpp non plus, alors Boost.Build ne construit pas une version de débogage.
Les chances sont Boost.Build n'utilise pas quand il chemin absolu compile la source.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top