Makefile
基本格式
target:dependencies
command
test:test.c
gcc test.c -o test
main:main.c tool.o
gcc main.c tool.o -o main
tool.o:tool.c
gcc -c tool.c //只编译出.o文件
clean:
rm*.o main
//makefile默认只生成第一个可执行脚本,加了all可以生成多个
all:main_1 main_2
main_1:main_1.c tool.o
gcc main_1.c tool.o -o main_1
main_2:main_2.c tool.o
gcc main_2.c tool.o -o main_2
tool.o:tool.c
gcc -c tool.c
clean:
rm*.o main_1 main_2
设置变量
CC = gcc //定义变量
CFLAGS = -lm -Wall -g
main:main.c tool.o
$(CC) main.c tool.o -o main
tool.o:tool.c
$(CC) -c tool.c
clean:
rm*.o main
.h文件
//foo.h
int add(int x, int y);
//foo.c
#include "foo.h"
int add(int x, int y){
return x+y;
}
//main.c
#include <stdio.h>
#include "foo.h"
int main(){
int a = add(1, 2);
return 0;
}