将V = s Flage传播到所有子makefile
当我使用make
构建内核模块时,我会得到这种日志
CC[M] module1 CC[M] module2 CC[M] module3 CC[M] module4
即只是编译或链接有关当前正在处理的任何模块的信息。
我需要知道哪些命令实际编译模块源代码的完整信息,这些命令中使用的flags
是什么等等
gcc -Wall abcd.c
我甚至通过设置V=s
, V=1
, -n
和-d
来检查它,但是无法得到我想要的东西。
请告诉我如何使V=s
传播通过每个后续的makefile。 它可以通过如何通过exporting
来完成?
谢谢
有两种方法:
- 您可以使用“
make V=1
”构建模块来打印详细消息。 - 您也可以通过将“
export KBUILD_VERBOSE=1
”行放入Makefile来完成此操作。
这是makefile的一个例子:
TARGET:= sysfs-sample export KBUILD_VERBOSE = 1 obj-m + = $(TARGET).o $(TARGET)-objs:= main.o MODULE_DIR:=“$(PWD)” 所有: CROSS_COMPILE = ARCH = x86 make -C / lib / modules / $(shell uname -r)/ build M = $(MODULE_DIR)modules 清洁: make -C / lib / modules / $(shell uname -r)/ build M = $(MODULE_DIR)clean