安装mkimage工具,解决报错“Invalid CPU Type - valid names are:”

问题

前两天在编译博雅芯片厂商提供的内核时,总是无法编译通过,试了好几次都提示如下错误:

Invalid CPU Type - valid names are: alpha, arm, x86, ia64, m68k, microblaze, mips, mips64, nios2, powerpc, ppc, s390, sh, sparc, sparc64, blackfin, avr32
Usage: /usr/local/bin/mkimage -l image
          -l ==> list image header information
       /usr/local/bin/mkimage [-x] -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file[:data_file...] image
          -A ==> set architecture to 'arch'
          -O ==> set operating system to 'os'
          -T ==> set image type to 'type'
          -C ==> set compression type 'comp'
          -a ==> set load address to 'addr' (hex)
          -e ==> set entry point to 'ep' (hex)
          -n ==> set image name to 'name'
          -d ==> use image data from 'datafile'
          -x ==> set XIP (execute in place)
       /usr/local/bin/mkimage [-D dtc_options] -f fit-image.its fit-image
make[1]: *** [arch/csky/boot/uImage] Error 1
make: *** [uImage] Error 2
Creating Temp DIR for building rootfs:/tmp/rootfs-20695
/tmp/rootfs-20695

分析

查看系统里是有该工具的,而且同事在同样版本的Ubuntu系统也可以编译通过,所以考虑是mkimage的问题
在这里插入图片描述
mkimage 工具可以通过两个途径获得,一般芯片厂商给的SDK里会有mkimage工具,在uboottools目录下拷贝到编译的机器使用即可(记得备份好旧的mkimage);另一个是自己从网上下载安装(一般不建议)。

我的编译机器是Ubuntu14.04的,先使用安装的方式更新mkimage,在命令行输入下面命令:
sudo apt-get install u-boot-tools

更新完继续编译,还是出错。。。

最后直接使用同事拷贝过来的mkimage,编译通过。

总结:

编译内核时,mkimage工具报错 Invalid CPU Type - valid names are: ..... 时,很可能是工具太旧了,可以尝试更新mkimage,看是否解决问题,最好使用厂商提供的 mkimage 工具,替换mkimage时,注意备份好旧的工具,以防丢失。


有用的话,帮忙点赞收藏,支持鼓励一波 !!!( *_^ )
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wkd_007

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值