Woo*_*yun 5 linux-device-driver linux-kernel
我正在尝试构建模块。
但是这里有一些问题。
错误:内核配置无效。缺少 include/generated/autoconf.h 或 include/config/auto.conf。在内核 src 上运行“make oldconfig && make prepare”来修复它。
警告:符号版本转储 ./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
Run Code Online (Sandbox Code Playgroud)
我尝试像这样构建:
export KERNELDIR=/path/to/extern/linux/source
make
Run Code Online (Sandbox Code Playgroud)
我怎么解决这个问题?
Wil*_*ens 16
重新安装linux-headers.
bash presumably)首先,我们尝试重新安装(使用 APT)该linux-headers软件包 -但添加您的特定内核版本。由以下命令确定:$(uname -r)
并在一行中完成所有操作:
sudo apt install --reinstall linux-headers-$(uname -r)
然后,当我们谈论内核并对其进行更改(也非常重要,即重新安装内核)时,我们希望在 APT 命令完成后立即重新启动:
sudo reboot
如果您发现找不到任何软件包(或类似的软件包)(来自 apt),请尝试apt update并重试上述操作。
请检查 /var/log/kern.log 是否有任何消息,
cat /var/log/kern.log我用以下命令解决了这个问题:
.config从您构建的源中获取带有内核配置的最新文件。将其复制到kernel-source目录(例如build/tmp/work-shared/lmm-corei7/kernel-source:)。make prepare。| 归档时间: |
|
| 查看次数: |
9502 次 |
| 最近记录: |