0
点赞
收藏
分享

微信扫一扫

buildroot技巧

花明 2022-03-22 阅读 91


make menuconfig时删除不了字符

方法:ctrl+Backspace(退格)

make menuconfig退出当前界面

按两次Esc

交叉编译工具无法执行

Cannot execute cross-compiler '/work/tools/usr/local/arm/4.3.2/bin/arm-linux-gcc'

分析:去/work/tools/usr/local/arm/4.3.2/bin/路径,ls -l查看,发现arm-linux-gcc是个软链接,指向

    arm-none-linux-gnueabi-gcc

方法:将Toolchain prefix 改为  arm-none-linux-gnueabi

继续sudo make;

出错:Cannot execute cross-compiler '/work/tools/usr/local/arm/4.3.2/bin/arm-none-linux-gnueabi'

分析:因为虚拟机Ubuntu16.04用的是64位的,而arm-linux-gcc是32位的

方法:下载32位的库:

debian版:sudo apt-get install ia32-libs

其他版本:

sudo dpkg --add-architecture i386    //先添加32bit架构

sudo apt-get update

sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386

编译uboot错误

make[1]: Entering directory '/work/projects/buildroot/buildroot-2018.02.4/output/build/uboot-2012.04.01'

make: *** No rule to make target `JZ2440_config'.  Stop.

Makefile:662: recipe for target 'JZ2440_config' failed

原因:

buildroot 在make menuconfig时:

Bootloaders  --->   (JZ2440) U-Boot board name

然而,百问网提供的补丁:u-boot-2012.04.01_100ask.patch,这个补丁修改了boards.cfg,添加了一行:

smdk2440    arm         arm920t     -       samsung        s3c24x0

而这个第一列,就是开发板的名字,所以,make menuconfig 时,

Bootloaders  --->   (JZ2440) U-Boot board name处不应该填JZ2440,应该填smdk2440


举报

相关推荐

0 条评论