2010-06-01 7 views
5

Je suis en train de déboguer un programme en utilisant ddd. Lorsque je tente d'entrer dans une fonction, ou dans le principal() lui-même, je reçois l'avertissement suivant:avertissement: (Erreur interne: pc 0x804a6b0 en lecture dans psymtab, mais pas dans symtab.) G ++

warning: (Internal error: pc 0x804a6b0 in read in psymtab, but not in symtab.)

Ce avertissement clignote chaque fois que j'essaie de passer à une autre instruction en utilisant « n » ou entrer ou sortir d'une fonction. J'ai essayé de regarder cela dans d'autres forums, mais sans réponse concluante. Le code que j'essaye de déboguer court dans plusieurs dossiers et je ne suis pas sûr si je peux signaler le code entier ici.

J'utilise g ++ version:
g ++ (GCC) 4.4.1 20.090.725 (Red Hat 4.4.1-2)

Toute aide à ce sujet est la bienvenue.

Répondre

4

ks1322 a raison de dire que le problème est probablement dû à un bogue dans gdb qui a été corrigée. Je pense que la description et le patch sont décrits dans le lien suivant.

http://sourceware.org/ml/gdb-patches/2003-01/msg00074.html

Je peux confirmer que quand je rencontre également ce problème dans une application C++ sous gdb 6.8, la mise à jour gdb 7.2 a résolu.

+0

Il mise à jour gdb à la version appropriée et essayez-le. Merci de votre aide! – Sriram

+0

Malheureusement, GDB 7.2 montre toujours le même comportement - que ce soit en raison du même bug ou d'un autre. –

+0

Identique à Anton. J'ai eu ce message avec GDB 7.2 mais ce n'est pas arrivé avec 7.6 si. – Arnaud

2

Essayez d'utiliser version plus récente de gdb (7.0 ou 7.1)