编译Linux 6.5内核NVMe驱动模块时遇Module.symvers缺失及未定义符号错误的解决方法求助
编译Linux 6.5内核NVMe驱动模块时遇Module.symvers缺失及未定义符号错误的解决方法求助
我已经克隆了Linux 6.5版本的内核源码,现在只想单独编译NVMe驱动模块,使用的命令是:
sudo make M=drivers/nvme
但执行后出现了如下错误:
MODPOST drivers/nvme/Module.symvers WARNING: Module.symvers is missing. Modules may not have dependencies or modversions. You may get many unresolved symbol errors. You can set KBUILD_MODPOST_WARN=1 to turn errors into warning if you want to proceed at your own risk. ERROR: modpost: "try_module_get" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "misc_deregister" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "__num_online_cpus" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "snprintf" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "class_destroy" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "scnprintf" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "kfree" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "fortify_panic" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "__fentry__" [drivers/nvme/host/nvme-fabrics.ko] undefined! ERROR: modpost: "__x86_indirect_thunk_rax" [drivers/nvme/host/nvme-fabrics.ko] undefined! WARNING: modpost: suppressed 927 unresolved symbol warnings because there were too many) make[2]: *** [scripts/Makefile.modpost:144: drivers/nvme/Module.symvers] Error 1 make[1]: *** [/home/machineName/LinuxKernelCode/linux-6.5/Makefile:1984: modpost] Error 2 make: *** [Makefile:234: __sub-make] Error 2
我该怎么解决这个问题呢?我已经尝试安装了内核头文件,并且在.config文件中启用了NVM Express块设备支持。我的系统内核版本是6.5.0-25-generic。
备注:内容来源于stack exchange,提问作者user16820050




