编译内核出错 make: *** [include/linux/version.h] Error 2 编译内核出错



在make mrproper
make menuconfig后
再make时出现如下错误:
/bin/sh: -c: line 0: syntax error near unexpected token `('
/bin/sh: -c: line 0: `set -e; echo ' CHK include/linux/version.h';
mkdir -p include/linux/; if [ `echo -n "2.6.16.27 .file null .ident GCC:(GNU)4.0.3 .
section .note.GNU-stack,,@progbitsy" | wc -c ` -gt 64 ]; then echo '"2.6.16.27 .
file null .ident GCC:(GNU)4.0.3 .section .note.GNU-stack,,@progbitsy" exceeds
64 characters' >&2; exit 1; fi; (echo \#define UTS_RELEASE \"2.6.16.27 .file null .
ident GCC:(GNU)4.0.3 .section .note.GNU-stack,,@progbitsy\"; echo \#define
LINUX_VERSION_CODE `expr 2 \\* 65536 + 6 \\* 256 + 16`; echo '#define
KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'; ) <
/sources/linux-2.6.16.27/Makefile > include/linux/version.h.tmp;
if [ -r include/linux/version.h ] && cmp -s include/linux/version.h
include/linux/version.h.tmp; then rm -f include/linux/version.h.tmp;
else echo ' UPD include/linux/version.h'; mv -f include/linux/version.h.tmp include/linux/version.h; fi'
make: *** [include/linux/version.h] Error 2






当第一次build内核的时候,会将/dev/null文件修改为普通的问题(原来是设备文件)
用ls -lrt /dev/null查看一下,可以看到正常的/dev/null的文件类型:
crw-rw-rw- 1 root root 1, 3 2008-06-28 01:00 /dev/null
在内核编译后,会变成:
-rw-rw-rw- 1 root root 1, 3 2008-06-28 01:00 /dev/null
注意上述两行的第一个字符,由原来的c字符变成-字符,也就是有设备文件变成了普通文件
只要重新建一下这个节点即可:
mknod -m 666 /dev/null c 1 3
然后再:
make
make modules_install
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

q472599451

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值