2010-09-17 7 views
5

estoy tratando de depurar el código usando GDB, pero cuando intento ver mi color variables que decir estoSin símbolo "color" en el contexto actual. BGF

No symbol "color" in current context. 

La variable es un entero y es claramente en el ámbito de aplicación. el código es el siguiente

int color=0; 

if(color==0) 
    color=1; 

y mi depurador se pasa la declaración de la variable.

Yo sólo estoy haciendo, con un punto de quiebre en el caso de (color == 0)

(gdb) watch color 

podría sospechar que el compilador o algo así, es posible?

Editar: hay algunos problemas con la depuración de constructores con GDB

+0

Por favor, publique una transcripción de su interacción con GDB. Como es, es imposible decir cuál de las muchas cosas posibles puede estar haciendo mal. –

+0

¿El programa está compilado con símbolos de depuración? – ninjalj

Respuesta

3

usted necesita para asegurarse de que está pasando la opción -g a gcc cuando se compila el código. También debe pasar -O0 para asegurarse de que el compilador no está optimizando su variable.

Cuestiones relacionadas