gcc -ggdb3 -Wall -o test2 test2.c 使用调试符号编译
ulimit -c unlimited
./test2异常后会产生core文件
gdb test2 core.12107
r
bt
可以看到出错的堆栈,找到出问题代码的行
gcc -O1(2,3)优化,一般在开发最后阶段使用
3个文件,分开编译,然后再组成一个,每个文件的修改不影响别的文件
gcc -Wall -c -o test1.o test1.c
gcc -Wall -c -o test2.o test2.c
gcc -Wall -c -o test3.o test3.c
gcc -o program test1.o test2.o test3.o
如果test1有修改,那么只需编译test1,在重新连接
gcc -Wall -c -o test1.o test1.c
gcc -o program test1.o test2.o test3.o
大型项目使用make管理
gcc -Wall -l /usr/include/aa -o test test.c到指定查找路径
ldd ./test 显示依赖的共享函数库
gdb test5
break main在main后的第一个语句设置断点,也可以break 行号设置断点
run开始运行
step下一步
s继续
print打印变量