linux的make提示错误46,Linux 2.6.21编译发生错误

CHK     include/linux/version.h

CHK     include/linux/utsrelease.h

HOSTCC  scripts/mod/sumversion.o

scripts/mod/sumversion.c: 在函数‘get_src_version’中:

scripts/mod/sumversion.c:384: 错误:‘PATH_MAX’未声明(在此函数内第一次使用)

scripts/mod/sumversion.c:384: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其

scripts/mod/sumversion.c:384: 错误:所在的函数内也只报告一次。)

scripts/mod/sumversion.c:384: 警告:未使用的变量‘filelist’

make[2]: *** [scripts/mod/sumversion.o] 错误 1

make[1]: *** [scripts/mod] 错误 2

make: *** [scripts] 错误 2

[root@localhost linux-2.6.21]#

上面是出错代码。大虾指点!

|

1) cp 某缺省config .config

2) make menuconfig (或者make oldconfig)

3) make

再不行先make distclean再从头开始。

再不行得到一份全新的source解开再从头开始。

再不行就要看代码了。。好像 include/linux/limits.h 有定义 PATH_MAX

还有就是建议不要用中文环境。可能会有异常错误。

|

linux 技术交流群 8709932 欢迎各位高手的加入

|

2.6已经不是像2.4那样做类似 “cp 某缺省config .config ” 的动作了。

例如,对x86_32,make i386_defconfig

本质也是把 arch/x86/configs/i386_defconfig 拷到 下。

楼主应该提供更多的信息。缺省的标准kernel应该不会有错误的,

所以你得告诉大家你做了什么?怎么做的?

|

如楼上说,详细信息说。。。。

|

你在文本模式下的编译信息是中文的,还是英文的?

可能像某些网友说的,可能在中文环境下,有些莫名其妙的错误。

不知道你的情况是不是属于这种情况。

|

scripts/mod/sumversion.c文件是你自己加入的,还是修改过内核了呀?

从错误提示以及你的回复中可以看的出,你的编译方法是正确的,只是程序有问题,程序的主要错误是‘PATH_MAX’没有声明过,如果是你自己修改过内核,请认真检查一下,只需要补上这个声明,这个错误就能够过去了。至于补在哪儿,该怎么补,这个需要你根据自己的程序代码来定了。

另外可以参照你系统中的内核源代码来做一个参照!

|

学习!楼主加油,内核 编译确实不容易过,其实你把内核源码包解开,直接make menuconfig,后make是可以编过去的,默认的为i386架构,然后再在基础上裁减,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值