我正在使用make构建一个linux设备,我需要在我的设备中使用string.h。我试图添加/ usr / include来生成文件,但它不起作用。任何人都可以帮我添加另一个包含路径来制作文件。 我的make文件是
KBUILD_CFLAGS += -w
obj-m += netlinkKernel.o
all:
make -w -C /lib/modules/$(shell uname -r)/build CPPFLAGS="usr/include/" M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
答案 0 :(得分:2)
那是因为只有usr/include/
不是一个合适的编译器标志。你需要使用例如-I/usr/include/
。
但是,在内核驱动程序中使用来自用户空间的库可能无法正常工作,就像根本没有那样。内核应该拥有它应该使用的自己的字符串库(包括"string.h"
头文件)。
答案 1 :(得分:0)