关闭

-g gdb无法list

204人阅读 评论(0) 收藏 举报
分类:

网上下的源码,编译之后居然不能gdb list源码,不爽,查make里面有-g啊,为啥不能list代码啊。

居然,居然。。。。

makefile 如下:

gcc *.c -i *.o

gcc *.o -g -o exe

没有半点怀疑,makefile中有-g,为何不能list呢??

后修改如下:

gcc *.c -g -i *.o

gcc *.o -o exe

可以list源码了。

后来想想也是啊,由.c 生成.o,有-g才能将符号表生成到.o文件中。再编译成exe可执行文件才能list。

如果.o里本来就没有符号表,那exe表就不能list了。


编码多年了,好多细节没有理解,黄果树瀑布汗。。。

如下是网友说的:

我曾经遇到过这种问题。。。我是用.o文件gcc -g 生成一个可执行文件。但是可执行文件是不能够使用gdb的。。

只有使用.c通过gcc生成才能够进行调试的。。。。
gcc -g *.c -o *  这个是不能生成可gdb的文件的。。。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1168次
    • 积分:79
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条