J'essaie d'utiliser gdb et kdevelop pour déboguer une application de console sous Knoppix VM. Kdevelop et GDB ne cassent pas à mes points d'arrêt. Je soupçonne que c'est parce qu'ils n'ont pas de symboles de débogage. P>
Si je suis correct, comment dois-je changer de maquillage pour créer ceux-ci. Peut-être que le problème est ailleurs? P>
Cordialement, Ariel p>
3 Réponses :
Inclure La deuxième étape: exclure -g code> dans les indicateurs envoyés sur le compilateur et la liaison. Les variables par défaut pour cela sont
cflags code> et
ldflags code> respectivement. P>
-s code> à partir d'indicateurs (
-s code> signifie
L'option "-g" doit seulement être donnée au compilateur via la macro CFLAGS. Il n'est pas nécessaire de l'avoir dans la macro LdFlags.
Je suppose que la connaissance du culte de la cargaison. À un moment donné, j'ai utilisé un litige qui devait être dit pas i> de jeter les symboles de débogage ...
Si vous êtes capable de voir la source et de définir le point d'arrêt, vous avez probablement des symboles de débogage établis. Cependant, la séquence habituelle est la suivante: donnez plus de détails sur ce que vous faites et quels messages vous voyez et nous pouvons être plus précis. P> p>
L'exemple complet serait: le cflags code> est appliqué sur le compilateur et la lieur. p> p>
Ce n'est pas vrai. Dans votre exemple -g code> n'est appliqué que dans l'étape de compilation. En effet, la compilation arrive à travers une règle implicite de faire qui crée
programme.o code> à partir de
programme.c code> (sans
programme.c code> jamais mentionné explicitement Dans le makefile. La règle implicite utilise
CFLAGS code>. Toutefois, la règle explicite de l'étape de liaison est exécutée comme indiqué - ainsi
-g code> est pas i> appliqué lors de la liaison (AFAIK, il ne faut pas avec GCC de toute façon).