Linux--查看Makefile变量值

查看Makefile变量值


在看uboot的Makefile的时候,发现CURDIR这个变量没有定义就直接用了,于是百度了一下,原来CURDIR是Makefile的一个内置变量,在这里顺便把其他的变量也记录一下。

打印变量值使用命令:

make -p > xx

-p, –print-data-base Print make’s internal database。即打印makefile 的执行规矩等。从而查看到相应的makefile中的各个变量的值。xx 把这些数据都重定向到xx这个文件中。

变量分为了环境变量、内置变量和自动变量。

  • 环境变量:
PAPERSIZE = letter
DESKTOP_SESSION = ubuntu
XDG_SESSION_TYPE = x11
XAUTHORITY = /home/zht/.Xauthority
_ = /usr/bin/make
......
  • 内置变量:
CURDIR := /home/zht # 记录当前路径
SHELL = /bin/sh
MAKEFILE_LIST :=  Makefile
.DEFAULT_GOAL := all
MAKEFLAGS = p
HOSTARCH := x86_64
CC = cc         # C语言编译器的名称
CPP = $(CC) -E  # C语言预处理器的名称 $(CC) -E
CXX = g++       # C++语言的编译器名称
RM = rm -f      # 删除文件程序的名称
CFLAGS          # C语言编译器的编译选项,无默认值
CPPFLAGS        # C语言预处理器的编译选项,无默认值
CXXFLAGS        # C++语言编译器的编译选项,无默认值
......
  • 自动变量:
$@:表示目标文件的名称,包含扩展名
$^:表示所有的依赖文件,以空格隔开,不重复
$<:表示第一个依赖文件的名称
$+:表示所有的依赖文件,空格隔开,可以重复
$*:表示目标文件的名称,不包含扩展名
$?:依赖项中,所有比目标文件新的依赖文件

参考文档:

猜你喜欢

转载自blog.csdn.net/Meteor_s/article/details/81661957
今日推荐