我有IDE和两个生成版本的Makefile项目:调试和发布。 IDE发送make命令:“make -f Makefile Debug”或“make -f Makefile Release”。 我无法找到如何通过参数“Debug”或“Release”来更改ccflags-y的方法。什么是正确的方式?我简单的Makefile看到的是这样的:调试/发布从IDE调用的Makefile
ccflags-y += -D__KERNEL__ -DMODULE -DDEFINE1 -DDEFINE2
mkfile_dir := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
Debug: ccflags-y += -DDEBUG -g3 -O0 # NOT FUNCTIONAL !
Release: ccflags-y += -DNDEBUG -O2 # NOT FUNCTIONAL !
Debug: all
Release: all
cleanDebug: clean
cleanRelease: clean
obj-m := modulesrc.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(mkfile_dir) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(mkfile_dir) clean
其他makefile是内核源代码的一部分。即使我已经解决了它,但我试过了,它不起作用。在源代码编译中,编译器不知道需要的定义。 – StackPeter