创建一个Makefile,编译下述程序运行。主程序为main.c, 头文件fun.h 子程序test1.c - test7.c
时间: 2024-09-24 15:17:50 浏览: 38
gpio-test.rar_ARM Linux GPIO_gpio linux makefile_gpio_test.c_led
创建一个Makefile用于编译你的项目通常涉及以下几个步骤:
1. 首先,在Makefile中,你需要定义一些基本规则,如`CC`(编译器),`OBJECTS`(目标对象文件列表),以及`EXECUTABLE`(最终可执行文件名)。假设默认的编译器是`gcc`:
```makefile
CC = gcc
OBJECTS = main.o test1.o test7.o
EXECUTABLE = my_program
# 源文件和目标文件之间的依赖关系
.SUFFIXES: .c .o
.c.o:
$(CC) -c $< -I./include -o $@
# 主目标,即编译所有源文件并链接成可执行文件
all: $(EXECUTABLE)
$(EXECUTABLE): $(OBJECTS)
$(CC) $(OBJECTS) -o $@
```
在这个例子中,`-I./include`选项告诉编译器查找`fun.h`头文件的位置。
2. 确保`main.c`, `fun.h`, `test1.c`, 和 `test7.c`都在`include`目录下或其子目录,因为Makefile指定了相对路径。
接下来你可以通过以下命令使用这个Makefile进行编译:
```sh
$ make all
```
这将执行一系列操作,包括编译各个源文件为.o对象文件,然后链接生成`my_program`可执行文件。
阅读全文