我正在尝试编译一个新的自定义内核,这是我在尝试使用make --trace
安装模块时得到的:
Makefile:1202: target '_modinst_' does not exist
rm -rf /lib/modules/4.8.17-ARCH 4.1.1-RC1-g9ce0bd6/kernel
rm -f /lib/modules/4.8.17-ARCH 4.1.1-RC1-g9ce0bd6/source
mkdir -p /lib/modules/4.8.17-ARCH 4.1.1-RC1-g9ce0bd6/kernel
ln -s `cd . && /bin/pwd` /lib/modules/4.8.17-ARCH 4.1.1-RC1-g9ce0bd6/source
ln: target ‘4.1.1-RC1-g9ce0bd6/source’ is not a directory
make: *** [Makefile:1205: _modinst_] Error 1
据我所知,这是由于指向我的工作目录的路径包含无效字符,但对我来说并没有错:
/home/student/ws_student/kernel/linux-4.8.17
这是我在makefile中查找时得到的:
_modinst_:
@rm -rf $(MODLIB)/kernel
@rm -f $(MODLIB)/source
@mkdir -p $(MODLIB)/kernel
@ln -s `cd (srctree) && /bin/pwd` $(MODLIB)/source
对不起,我英语不好。
最佳答案
它不是您的工作目录,而是包含“无效”字符(空格)的内核版本后缀:
ARCH 4.1.1-RC1-g9ce0bd6
从
make --trace
输出中可以看到,这会混淆_modinst_
收据中的shell命令。