简单编写Makefile与使用make工具
在不使用make工具下对c文件的编译
gcc main.c -o out
gcc 《目标文件》 -o 《生成执行文件》
编译main.c文件-->out.exe
生成out.exe可执行文件
执行out.exe
./out.exe
成功执行main编译结果
PS:
在window下生成的可执行文件为后缀.exe文件
windows:
mingw32-make
Linux:
make
工具路径:"D:\MinGW\bin\mingw32-make.exe"
**使用mingw32-make命令将会执行make工具,所以将mingw32-make.exe文件复制重命名为make.exe,就可以在window下通过make命令来使用make工具,也可以通过mingw32-make专业使用make工具。
window下make工具mingw32-make.exe
复制,重命名为make.exe,这样就能同时使用make命令和mingw32-make命令
在linux下生成的可执行文件为后缀.out文件
过程截图
它定义了一个名为hello的目标,这个目标依赖于main.c和message.c文件。当main.c和message.c文件发生变化时,gcc命令会被执行,生成一个名为hello的可执行文件。
linux删除文件命令rm -f:
window删除文件命令del hello.exe
构建
Make:
定义了三个目标:hello、main.o和message.o。每个目标都有一个依赖文件和一个命令。
- hello目标依赖于main.o和message.o文件。当main.o和message.o文件发生变化时,gcc命令会被执行,生成一个名为hello的可执行文件。
- main.o目标依赖于main.c文件。当main.c文件发生变化时,gcc命令会被执行,生成一个名为main.o的目标文件。
- message.o目标依赖于message.c文件。当message.c文件发生变化时,gcc命令会被执行,生成一个名为message.o的目标文件。
伪目标:clean: 原:make clean 新: mingw32-make clean
删除构建中间文件
常用的内置变量
- $@:表示目标文件。
- $^:表示所有的依赖文件。
- $<:表示第一个依赖文件。
Cmake构建
需要gcc,g++工具链