我正在尝试构建模块。
但是这里有一些问题。
错误:内核配置无效。 缺少include / generated / autoconf.h或include / config / auto.conf。 运行'make oldconfig&&在内核src上做准备以修复它。
警告:符号版本转储./Module.symvers 不见了;模块将没有依赖关系和modversions。
这是我的makefile
ifeq ($(KERNELRELEASE),)
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
modules:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
modules_install:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install
clean:
rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions
.PHONY: modules modules_install clean
else
# called from kernel build system: just declare what our modules are
obj-m := hello.o hellop.o seq.o jit.o jiq.o sleepy.o complete.o \
silly.o faulty.o kdatasize.o kdataalign.o
endif
我试着像这样建造:
export KERNELDIR=/path/to/extern/linux/source
make
我该如何解决这个问题?
答案 0 :(得分:1)
好的,所以我会尝试重新安装 linux-headers。告诉我这是否有效!或者如果没有!
在终端(bash)中:
如果您不是 root:
HashMap::get
mem::transmute
sudo apt install --reinstall linux-headers-$(uname -r)
如果你找不到任何包,(或类似的)(来自 apt)
尝试 sudo reboot
并重新尝试上述操作。
我不知道这是否有帮助,但是 - 检查 apt install --reinstall linux-headers-$(uname -r)
是否有任何消息
答案 1 :(得分:0)
我通过以下命令解决了这个问题:
kernel-source
目录(例如:build/tmp/work-shared/lmm-corei7/kernel-source
)。.config
文件。make prepare
。