1. tar xjf busybox-1.7.0.tar.bz2
2. make menuconfig
3. make CROSS_COMPILE=arm-linux-
4. make CONFIG_PREFIX=/home/youliang/share/work/busybox/firstboot install
CentOS 7
1. make CROSS_COMPILE=arm-linux-
Makefile:1242: *** 混和的隐含和普通规则。 停止。
这是由于centos 7的Make工具对低版本内核Makefile一些旧的规则兼容不是很好,只需要修改一下开发包内核原码里的Makefile。对文件/home/linux_3210/Makefile修改如
1 .
/ %/: prepare scripts FORCE
$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) \
$(build)=$(build-dir)
改为:
/: prepare scripts FORCE
$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) \
$(build)=$(build-dir)
%/: prepare scripts FORCE
$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) \
$(build)=$(build-dir)
2
.config %config: scripts_basic outputmakefile FORCE
$(Q)mkdir -p include
$(Q)$(MAKE) $(build)=scripts/kconfig $@
$(Q)$(MAKE) -C $(srctree) KBUILD_SRC= .kernelrelease
改为:
.config:scripts_basic outputmakefile FORCE
$(Q)mkdir -p include
$(Q)$(MAKE) $(build)=scripts/kconfig $@
$(Q)$(MAKE) -C $(srctree) KBUILD_SRC= .kernelrelease
%config: scripts_basic outputmakefile FORCE
$(Q)mkdir -p include
$(Q)$(MAKE) $(build)=scripts/kconfig $@
$(Q)$(MAKE) -C $(srctree) KBUILD_SRC= .kernelrelease
$make menuconfig
HOSTLD scripts/kconfig/mconf
HOSTCC scripts/kconfig/lxdialog/checklist.o
In file included from scripts/kconfig/lxdialog/checklist.c:24:0:
scripts/kconfig/lxdialog/dialog.h:31:20: 致命错误:curses.h:没有那个文件或目录
#include CURSES_LOC
^
编译中断。
make[2]: *** [scripts/kconfig/lxdialog/checklist.o] 错误 1
make[1]: *** [menuconfig] 错误 2
make: *** [menuconfig] 错误 2
解决问题
cetos7 系统中缺少一个套件 ncurses devel ,把此套件
yum install ncurses-devel
阅读(2923) | 评论(0) | 转发(0) |