Makefile脚本
把用于编译的命令记录到文件中。
当多个文件程序时,编译会变得异常麻烦,而Makefile文件中可以把编译指令记录下来,
当执行make命令时会自动把Makefile中的编译指令进行执行。
使用make进行编译时会根据文件的修改时间来确定,
.c文件是否需要再次编译,如果不是新修改的文件不需要重复编译。
注意:
必须使用tab键缩进,否则会产生 *** 遗漏分隔符 。
Makefile格式:
1、定义一些变量
CC=gcc
STD=-std=gnu99
BIN=a.out
OBJ=a.o main.o
FLAG=-Wall -Werror
-Wall 尽可能多的产生警告,以更严格的标准来检查代码。
-Werror 把警告当作错误处理。
2、定义编译目标(函数)
目标名:其它目标(目标依赖,先执行其它目标,再执行此目标)
指令 // 必须使用tab键缩进,否则会产生 *** 遗漏分隔符 。
默认只执行排在第一个编译目标
3、用于清理目标文件的编译目标
clean:
rm $(OBJ)
GDB调试:
1、设置ubuntu系统,当段错误时产生core
ulimit -c unlimited
2、编译时增加-g参数
3、再次执行新编译的程序,重新产生core文件
4.gdb a.out core 进行调试
run/where