2011-11-03 6 views

Respuesta

3

La manera usual para producir la información de depuración para gdb es pasar -g a la gcc o g++ compilador (y también en el momento de la vinculación).

Busque en el Cmake FAQ cómo obtener un ejecutable depurable.

+0

¿Solo quiero tabla de símbolos si es posible? –

+1

Probablemente sea posible, pero no es una pregunta específica de 'cmake'. Creo que son algunas utilidades de Linux (quizás relacionadas con binutils) para extraer información de depuración de un ejecutable ELF, pero nunca las utilicé. http://www.moythreads.com/wordpress/2009/08/31/debugging-information-in-separate-files/ –

+2

"Leer las preguntas frecuentes" generalmente no es la respuesta correcta en SO ... –

70

añadir esta línea en el fichero de CMakeLists.txt:

set(CMAKE_BUILD_TYPE Debug) 
+3

La Navaja de Occam gana nuevamente. –

40

compilar en modo de lanzamiento optimizado pero añadiendo símbolos de depuración, útil para el perfilado:

cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ... 

o compilar con el NO optimización y adición de símbolos de depuración:

cmake -DCMAKE_BUILD_TYPE=Debug ... 
Cuestiones relacionadas