Makefile文件是:當我使用gdb進行調試時,爲什麼「現在沒有符號文件」?
objects = disk.o super.o inode.o namei.o open.o main.o
test : $(objects)
cc -g -Wall -O2 -o test $(objects)
disk.o : fs.h disk.h
cc -g -Wall -O2 -c disk.c
namei.o : fs.h
cc -g -Wall -O2 -c namei.c
open.o : fs.h
cc -g -Wall -O2 -c open.c
super.o : fs.h
cc -g -Wall -O2 -c super.c
inode.o : fs.h
cc -g -Wall -O2 -c inode.c
main.o : fs.h disk.h sched.h
cc -g -Wall -O2 -c main.c
.PHONY : clean
clean:
rm edit $(objects)
我用 「-g」,但是當我調試它由GDB:
gdb test
的消息是:
Reading symbols from /root/lx/filesystem/lx_filesystem/test...(no debugging symbols found)...done.
(gdb) file
No executable file now.
No symbol file now.
這也就是爲什麼?
謝謝
'cc'是'gcc'的鏈接嗎?此外,你不應該作爲'root'工作,如果不是必要的話...... –
@ bash.d cc當我測試它時是可以的。我在VPS中編碼,所以根也許沒問題。謝謝 – lxgeek
你是如何編譯目標文件的?如果它們沒有用-g編譯,則不會有調試符號。 – Entropia