gcc (GCC) 4.6.0 GNU gdb (GDB) Fedora (7.2.90.20110525-38.fc15)Biểu tượng gỡ lỗi trông như thế nào?
thời gian gần đây tôi đã có một vấn đề khi tôi đã cố gắng để gỡ lỗi vấn đề của tôi sử dụng gdb. Khi tôi nạp nhị phân của tôi gdb phàn nàn "Không những biểu tượng gỡ lỗi đã được tìm thấy"
Vì vậy, khi tôi đã làm như sau:
nm ass1
tôi có kết quả như sau (chỉ mẫu)
00000000006026e0 t __init_array_end
00000000006026d0 t __init_array_start
00000000004020e0 T __libc_csu_fini
0000000000402050 T __libc_csu_init
U [email protected]@GLIBC_2.2.5
00000000006029ec A _edata
0000000000602b28 A _end
000000000040212c T _fini
0000000000401420 T _init
0000000000401610 T _start
U [email protected]@GLIBC_2.2.5
000000000040163c t call_gmon_start
0000000000602b10 b completed.5886
00000000006029e8 W data_start
0000000000602b18 b dtor_idx.5888
00000000004016d0 t frame_dummy
00000000004016f4 T main
Các vấn đề là tôi quên thêm -g. Vì vậy, tôi quyết định biên dịch với -g và chạy nm một lần nữa. Tôi có một đầu ra simliar, điều này có chứa các biểu tượng gỡ lỗi như tôi đã sử dụng -g, và gdb không phàn nàn thời gian này:
U [email protected]@GLIBC_2.2.5
00000000006029ec A _edata
0000000000602b28 A _end
000000000040212c T _fini
0000000000401420 T _init
0000000000401610 T _start
U [email protected]@GLIBC_2.2.5
000000000040163c t call_gmon_start
0000000000602b10 b completed.5886
00000000006029e8 W data_start
0000000000602b18 b dtor_idx.5888
00000000004016d0 t frame_dummy
00000000004016f4 T main
w pthread_cancel
Ngoài kích thước lớn hơn. Tôi có thể nhận thấy bất kỳ khác nhau bằng cách sử dụng nm. Tôi tự hỏi tôi nên tìm gì? Các biểu tượng gỡ lỗi trông như thế nào?
Rất cám ơn cho bất cứ đề nghị,
Tôi đã làm điều đó với -a với cả hai trường hợp biên dịch có và không có -g. Tuy nhiên, tôi nhận được rất nhiều biểu tượng, nhưng cái nào là biểu tượng gỡ lỗi? Cảm ơn. – ant2009
Lemme chú thích. Bạn có thể không có bất kỳ biểu tượng nào cả; Linux thường sử dụng thông tin gỡ lỗi DWARF 2, được lưu trữ trong các phân đoạn ELF khác thay vì bảng biểu tượng (sau này là một sự lưu giữ từ định dạng 'a.out' giới hạn). – geekosaur