使用GNU make 编译C程序

来源:互联网 发布:大麦盒子连接不上网络 编辑:程序博客网 时间:2024/05/20 17:26

使用GNU make 编译C程序

命令行下编译C程序的方法有以下几种:
- 手工执行
- 编写一个脚本来执行这些重复执行的命令
- 使用make工具自动生成软件


手工编译

例子:
项目目录
|——makefile
|——src目录——app.c、app.h、main.c、lib.c、bar.c

手工编译命令

gcc -o exe src/app.c src/main.c src/lib.c src/bar.c

该命令的执行步骤如下:

gcc -c -o main.o src/main.cgcc -c -o app.o src/app.cgcc -c -o bar.o src/bar.cgcc -c -o lib.o src/lib.cgcc -o exe app.o main.o lib.o bar.o 

脚本方式

缺点是:每次调用都会重新生成整个项目

#!/bin/shgcc -c -o main.o src/main.cgcc -c -o app.o src/app.cgcc -c -o bar.o src/bar.cgcc -c -o lib.o src/lib.cgcc -o exe app.o main.o lib.o bar.o 

makefile文件

能够理解项目的依赖关系,只对更改的文件进行编译

exe:main.o app.o lib.o bar.o    gcc -o exe app.o main.o lib.o bar.omain.o:src/main.c src/lib.h src/app.h    gcc -c -o main.o src/main.capp.o:src/app.c src/lib.h src/app.h    gcc -c -o app.o src/app.cbar.o:src/bar.c src/lib.h    gcc -c -o bar.o src/bar.clib.o:src/lib.c src/lib.h    gcc -c -o lib.o src/lib.c
0 0
原创粉丝点击