我有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