首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

怎么判断一个.o文件是否有gdb信息

2013-11-21 
如何判断一个.o文件是否有gdb信息假设有一个文件a.c我可以这么编译:gcc -o a.o -c a.c也可以这么编译:gcc

如何判断一个.o文件是否有gdb信息
假设有一个文件a.c

我可以这么编译:gcc -o a.o -c a.c
也可以这么编译:gcc -o a.o -c a.c -g

请问我如何根据已有的a.o判断到底是上面两种中哪一种方式编译的?
[解决办法]
用如下命令:


objdump -t a.o


如果出现如下的.debug_段,则表示里面有调试信息,可以用gdb进行调试:

00000000 l    d  .debug_aranges00000000              .debug_aranges
00000000 l    d  .debug_pubnames00000000              .debug_pubnames
00000000 l    d  .debug_info00000000              .debug_info
00000000 l    d  .debug_abbrev00000000              .debug_abbrev
00000000 l    d  .debug_line00000000              .debug_line
00000000 l    d  .debug_frame00000000              .debug_frame
00000000 l    d  .debug_str00000000              .debug_str
00000000 l    d  .debug_loc00000000              .debug_loc


引用:
假设有一个文件a.c

我可以这么编译:gcc -o a.o -c a.c
也可以这么编译:gcc -o a.o -c a.c -g

请问我如何根据已有的a.o判断到底是上面两种中哪一种方式编译的?

热点排行