我正在尝试编译一个新的自定义内核,这是我尝试使用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
p / s:抱歉我的英语不好:P
答案 0 :(得分:1)
这不是您的工作目录,而是内核版本后缀,其中包含"无效"字符(空格):
ARCH 4.1.1-RC1-g9ce0bd6
从make --trace
输出中可以看出,这会在_modinst_
次收据中混淆shell命令。