2010-06-01 9 views
5

Sto provando a eseguire il debug di un programma utilizzando ddd. Quando provo ad entrare in qualsiasi funzione o all'interno di main() in sé, ottengo il seguente avvertimento:: (Errore interno: pc 0x804a6b0 in lettura in psymtab, ma non in symtab.) G ++

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

Lampeggia di avviso ogni volta che provo a passare a un'altra istruzione usando 'n' o entrare o uscire una funzione. Ho provato a cercare questo in altri forum, ma senza una risposta definitiva. Il codice che sto cercando di eseguire il debug si esegue in diversi file e non sono sicuro di poter pubblicare l'intero codice qui.

Sto usando la versione g ++:
g ++ (GCC) 4.4.1 20.090.725 (Red Hat 4.4.1-2)

Qualsiasi aiuto su questo è il benvenuto.

risposta

4

ks1322 è corretto affermare che il problema è probabile che sia a causa di un bug in gdb che è stato corretto. Penso che la descrizione e la patch rilevanti siano descritte nel seguente link.

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

posso confermare che quando ho anche incontrato questo problema in un'applicazione C++ in gdb 6.8, l'aggiornamento a gdb 7.2 risolto esso.

+0

Il update gdb alla versione pertinente e provare. Grazie per l'aiuto! – Sriram

+0

Sfortunatamente, GDB 7.2 dimostra ancora lo stesso comportamento, a causa dello stesso bug o di un altro. –

+0

Come Anton. Ho avuto questo messaggio con GDB 7.2 ma non è successo con 7.6. – Arnaud

2

tenta di utilizzare la versione più recente di gdb (7.0 o 7.1)