根据《嵌入式操作系统软硬件协同设计实战指南》13.2.3节进行uImage编译遇到以下几个问题
1. 根据书中下载文件xup_zed_defconfig时出现问题书中以如下指令下载
$ git clone https://github.com/xupsh/configs_path.git
无法通过该指令下载文件,而且在浏览器中搜索该下载链接显示not found,后来发现在https://github.com/xupsh中有configs_patch文件下载,而且其中有xup_zd_defconfig文件,因此执行如下指令下载文件
$ git clone https://github.com/xupsh/configs_patch.git
2. 根据书中指令
$ cp ../configs_patch/xup_zed_defconfig ./arch/arm/config/
发现该指令有错误,原因是arm文件夹下只有configs文件夹,因此执行
$ cp ../configs_patch/xup_zed_defconfig ./arch/arm/configs/
3.执行指令
$ make ARCH=arm menuconfig
出现错误scripts/kconfig/lxdialog/dialog.h:38:20: 致命错误: curses.h:没有那个文件或目录
编译中断。
make[1]: *** [scripts/kconfig/mconf.o] 错误 1
make: *** [menuconfig] 错误 2
这里需要安装ubuntu安装libncurses5-dev包,因此执行
$ sudo apt-get install libncurses5-dev
4.编译uImage是出现错误,"mkimage" command not found - U-Boot images will not be built
make[1]: *** [arch/arm/boot/uImage] 错误 1
make: *** [uImage] 错误 2
这里需要安装uboot-mkimage,执行指令
$ sudo apt-get install uboot-mkimage
以上是在学习过程中遇到的问题。