Estoy intentando compilar mi programa con símbolos de depuración para usar en gdb. He agregado el indicador -g a mi archivo MAKE, pero sigo recibiendo "Lectura de símbolos de ... (no se encontraron símbolos de depuración)" cuando cargo el programa en gdb. ¿¿Qué está mal??No hay símbolos de depuración en gdb incluso cuando se compila con la bandera -g
que aquí hay una simplificada ejemplo de mi makefile que deben tener los bits relevantes:
CPP = g++
CFLAGS = -c -g -Wall
$(BIN): $(OBJ)
$(CPP) $(LDFLAGS) $(OBJ) -o $(BIN) $(LIBS)
<test.o>: <test.cpp>
$(CPP) $(CFLAGS) <test.cpp> -o <test.o>
Si desea ver toda la cosa puede ir aquí en vez, aunque no lo hago pensar es necesario:
notas diversas .. estoy compilando con MinGW en Windows y tengo SFML y OpenGL como dependencias.
Y no, la bandera -s no se encuentra en mi archivo MAKE.
¿Puedes confirmar con 'make -n' que de hecho estás obteniendo el indicador' -g' en tu línea de compilación? – chrisaycock
F: \ rowdump \ rom \ ROMV> make -n g ++ -Wall src/obj/core.o src/obj/image.o src/obj/gnd.o src/obj/gat.o src/obj/world.o src/obj/rsw.o src/obj/camera.o src/obj/rsm.o src/obj/main.o -o romv -Wl, - enable-auto-import, -subsystem, windows -lsfml-main -lsfml-graphics -lsfml-window -lsfml-system -lopengl32 -lglu32 No está allí ! Extraño .. Y mis banderas -ansi y -pendantic se han ido también. Edit: Lo siento por el muro de texto. No me di cuenta de que iba a ser así. – delaccount992
la salida que Kobie pegó es para el objetivo predeterminado, que es para vincular, y no hay ninguna bandera -g ahí. Acabo de confirmar en Ubuntu que ese indicador no es necesario durante la vinculación solo en tiempo de compilación. Creo que debería intentar "make -n test.o" para ver qué comando se utiliza para compilar. – binW