gdb问题

kasim0070 2013-10-09 10:10:32
centos下gdb gcc版本是4.8.1 gdb我是yum安装的
为什么我的list main不显示,我想显示main函数,其他函数全部不能显示都是显示No line
显示如下:
(gdb) list main
No line number known for main.
makefile如下(makefile刚学)
obj=lib_str.o lib_draw.o lib_main.o lib_function.o lib_line.o lib_user.o lib_sell.o lib_stock.o
in=./include/include.h
cc= gcc -g
edit:$(obj)
gcc -g $(obj) -o edit -lpthread
lib_str.o:./c/lib_str.c $(in)
$(cc) ./c/lib_str.c -c
lib_draw.o:./c/lib_draw.c $(in)
$(cc) ./c/lib_draw.c -c
lib_main.o:./c/lib_main.c $(in)
$(cc) ./c/lib_main.c -c
lib_function.o:./c/lib_function.c $(in)
$(cc) ./c/lib_function.c -c
lib_line.o:./c/lib_line.c $(in)
$(cc) ./c/lib_line.c -c
lib_user.o:./c/lib_user.c $(in)
$(cc) ./c/lib_user.c -c
lib_sell.o:./c/lib_sell.c $(in)
$(cc) ./c/lib_sell.c -c
lib_stock.o:./c/lib_stock.c $(in)
$(cc) ./c/lib_stock.c -c
.PHONY:clean
clean:
-rm edit $(obj)
clear:
-rm $(obj)

哪里的问题呢

...全文
154 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
迷你N 2013-10-12
  • 打赏
  • 举报
回复
miniN have been here
  • 打赏
  • 举报
回复
试了试,没有LZ说的问题。建议只有一个文件编译后尝试,如gcc -g main.c 。 另: Makefile文件建议用下面代替一堆的.o编译语句

%.o : %.c %.h
        gcc -c $(CFLAGS)  -L./include $< -o $@
all :edit

edit:$(obj)
        gcc -g $(obj) -o edit -lpthread
Tom_殇子 2013-10-09
  • 打赏
  • 举报
回复
得先用 -g 编译一下。
kasim0070 2013-10-09
  • 打赏
  • 举报
回复
用list只能列出第一个.o的文件,加上-O2之后能读出main但是还是不能读出其他函数
iasky 2013-10-09
  • 打赏
  • 举报
回复
楼主的makefile中gcc的参数有-g,应该是可以的。 楼主直接gcc -g编译下呢。

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧