linux内核419,【已解决】Cygwin下配置Linux内核出错:Makefile:419: *** mixed implicit and normal rules. Stop....

【问题】

折腾:

期间, 去调用已有的默认的内核的配置,结果出错:CLi@PC-CLI-1 ~/develop/kernel/linux-2.6.19.1

$ make whgs_defconfig

Makefile:419: *** mixed implicit and normal rules. Stop.

如图:

c6ab033f1fd5cc277e81c7046167573b.png

【解决过程】

1.看起来,和之前折腾crosstool-ng时遇到的:

的问题类似,即:

make是3.82的,对于之前的make 3.81可以识别的混合的显式和隐式的语法,不支持了。

2.所以再次去确认一下,当前cygwin中的make的版本:CLi@PC-CLI-1 ~/develop/kernel/linux-2.6.19.1

$ make -v

GNU Make 3.82.90

Built for i686-pc-cygwin

Copyright (C) 2010 Free Software Foundation, Inc.

License GPLv3+: GNU GPL version 3 or later

This is free software: you are free to change and redistribute it.

There is NO WARRANTY, to the extent permitted by law.

果然是3.82版本的。

3.所以解决办法就只能是:

要么是去修改Linux内核中的makefile -> 估计修改的地方很多,不止一处;

要么是把Cygwin中的make从3.82,换成旧的3.81的版本的。

此处为了省事,很明显,还是选择第二种。

4.所以,接着就是去Cygwin中,把3.82的make换成3.81的make:

5.把make换成3.81后,再去配置试试,然后就可以避免此处错误,可以配置了:CLi@PC-CLI-1 ~/develop/kernel/linux-2.6.19.1

$ make whgs_defconfig

HOSTCC scripts/basic/fixdep

【总结】

Cygwin下,交叉编译时,配置linux内核,出现:Makefile:419: *** mixed implicit and normal rules. Stop.

的错误的:

原因是:

cygwin下的make是3.82的,不识别之前旧的3.81的make可以识别的那个混合语法;

解决办法是:

把cygwin下的make从3.82换成3.81:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值