学习Makefile

1.


-c代表只编译不链接

最后再链接所有.o文件生成main可执行文件
2.
Version1

hello(目标):main.cpp printhello.cpp (依赖)
g++ ... (命令)
Version2

定义变量

TARGET依赖OBJ,先去寻找OBJ里的.o文件,没有就执行下面代码生成

最后调用下面命令链接

Version3
三个变量定义不变:

添加编译选项:(显示所有警告)

$@代表TARGET(目标),$^代表OBJ(所有依赖)

CXXFLAGS编译选项,$<(一个依赖),$@代表TARGET(目标)

添加伪目标,防止文件中有clean文件时不会执行

Version4
SRC:当前目录下所有.cpp文件 OBJ:将SRC中的.cpp替换成.o

问题:
在修改头文件后执行Makefile不会将修改的内容编译
添加编译选项:

引用.d文件

clean后再重新编译

posted @ 2024-03-29 09:07  yu1741588584  阅读(18)  评论(0)    收藏  举报