也许很多人都知道,ARM裸机1期加强版课程用的是ubuntu 16.04,当用这个ubuntu编译内核和制作文件系统的时候会出现一些问题,售后团队用了一天时间找到了如下解决方法。
更多干货关注威信订阅号baiwenkeji
|
1.
编译busybox-1.23.2:
出现错误:
scripts/kconfig/Makefile:14: recipe for target 'menuconfig' failed
解决方法:安装2个库
sudo apt-get install libncurses5-dev libncursesw5-dev
2.
编译busybox-1.7.0出现如下错误:
busybox-1.7.0$make menuconfigMakefile:405:*** mixed implicit and normal rules: deprecated syntaxMakefile:1242:*** mixed implicit and normal rules: deprecated syntaxmake:*** No rule to make target 'menuconfig'. Stop.
分析原因:
新版Makefile不支持这样的组合目标:config %config(一个有通配符,另一个没有通配符)
解决方法:
要么把config %config拆成2个规则,要么把其中一个目标去掉。
所以,
a.修改busybox-1.7.0 顶层Makefile 405行:
config%config: scripts_basic outputmakefile FORCE改为:%config:scripts_basic outputmakefile FORCE
b.修改busybox-1.7.0 顶层Makefile 1242行:
/%/: prepare scripts FORCE改为:%/:prepare scripts FORCE
3.
配置linux-2.6.22.6内核出现如下错误:
linux-2.6.22.6$make menuconfigMakefile:416:*** mixed implicit and normal rules: deprecated syntaxMakefile:1449:*** mixed implicit and normal rules: deprecated syntaxmake:*** No rule to make target 'menuconfig'. Stop.
解决方法:
修改linux-2.6.22.6 顶层Makefile 416行:
config%config: scripts_basic outputmakefile FORCE改为:%config:scripts_basic outputmakefile FORCE
修改linux-2.6.22.6 顶层 Makefile 1449行:
/%/: prepare scripts FORCE改为:%/:prepare scripts FORCE