自学内容网 自学内容网

Makefile相关

基本语法:

1)指定使用的makefile:-f

参考:make指定makefile文件编译_make 指定makefile-CSDN博客

一般来说如果文件夹只有一个makefile文件,直接执行make命令即可。
当有多个makefile文件时,就需要指定文件名。

更多参数参考:(18)Make命令参数和选项大汇总 - Mr_chuan - 博客园 

2)debug 打印信息:$(info $var)

3) include  其他makefile: include   /path/makefile 

4) 条件语法:浅显易懂 Makefile 入门 (04)— 条件判断 (ifeq、ifneq、ifdef 和 ifndef)、定义命令包 define 和伪目标-CSDN博客

first = $(CXX)
second = g++

all:
ifeq ($(first), $(second))
echo `first == second`
else
echo `first != second`
endif

踩过的坑:

1)makefile里面定义来一个宏参数,带有一定值,但是在命令行里面再去给这个宏赋值,发现会把原来makefile里面的值给覆盖;预期效果是不覆盖原来的,只是在原来的基础上去增补;
请参考:Makefile中override 指示符_override variable = value-CSDN博客

通常在执行make时,如果通过命令行定义了一个变量,那么它将替代在Makefile中出现的同名变量的定义。就是说,对于一个在Makefile中使用常规方式(使用“=”、“:=”或者“define”)定义的变量,我们可以在执行make时通过命令行方式重新指定这个变量的值,命令行指定的值将替代出现在Makefile中此变量的值。如果不希望命令行指定的变量值替代在Makefile中的变量定义,那么我们需要在Makefile中使用指示符“override”来对这个变量进行声明

2) 


原文地址:https://blog.csdn.net/qq_40571921/article/details/142611110

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!