У меня есть небольшая .cpp программа, которая компилируется и работает, и я хочу, чтобы добавить информацию об отладке к нему, так что я скомпилировать так:г ++ не компиляции в отладочной информации
g++ -g a.cpp
Тогда, если я проверю отладочной информации с помощью следующей команды:
# objdump -g a.out
a.out: file format elf64-x86-64
objdump: a.out: no recognized debugging information
Что я делаю неправильно? Я ожидал, что отладочная информация будет найдена.
Информация о версии:
Linux xxx 2.6.18-308.el5 #1 SMP Fri Jan 27 17:17:51 EST 2012 x86_64 x86_64 x86_64 GNU/Linux
g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-52)
GNU objdump 2.17.50.0.6-20.el5 20061020
GDB работает? Вы запускаете команду strip? человек говорит: -g => Были реализованы только определенные типы отладочной информации – Lefsler
Я только запускал команду g ++ и objdump, перечисленные в вопросе. Я не знаю достаточно gdb, чтобы определить, находит ли он отладочные символы или нет. – Jeff
Не могли бы вы вставить версию своего gcc и вашего objdump. Было бы лучше, если бы вы могли рассказать нам свои os. – seanxiaoxiao