在ubuntu上搭建交叉编译环境---arm-linux-gnueabihf-

 

所以我建议各位如果你使用的是64位的Ubuntu系统,那就安装64位的arm-linux-gcc交叉编译器,直接安装就能成功:

例如:arm-linux-gcc-4.6.4-arm-x86_64.tar.bz2
下载地址:https://pan.baidu.com/s/1xuh8M8bQHfZt_w6h4vRKeg 
提取码:uk85 

sudo apt-get install gcc-arm-linux-gnueabihf

打开环境配置脚本:/etc/profile

使用命令:source /etc/profile 使环境变量生效

在终端上输入命令 arm-linux 再按Tab键,可以看到下图,说明环境变量设置成功了

arm-none-linux-gnueabi-gcc: not found
安装32位库的正确命令是:sudo apt-get install libc6-i386

sudo apt-get install ia32-libs

运行./arm-none-eabi-gcc时会报错

sudo apt-get install lib32stdc++6*
sudo apt-get install lib32z1* 
sudo apt-get install lib32ncurses5 lib32z1

#apt-get update更新数据源

$sudo  apt-get install build-essential kernel-package   libncurses5-dev
libncurses5-dev是为之后配置内核能运行 make menuconfig程序做准备
Build-essential为编译工具,kernel-package是编译内核工具

配置内核 make menuconfig

编译内核 make uImage(复制内核文件到tftp目录)

编译设备树 make dtbs(复制对应设备树文件到tftp目录)

make uImage -j4 LOADADDR=0x30008000

2.make menuconfig出现 'make menuconfig' requires the ncurses libraries.

sudo apt-get install ncurses-dev

解决 "mkimage" command not found - U-Boot images will not be built

解决方法:

sudo apt-get install u-boot-tools

2,

garbage following instruction - 'dmb ish'

发现是交叉编译器的问题,可能是版本太低。然后就按照网上的说法安装新版本工具链:

sudo apt-get install gcc-arm-linux-gnueabi

在ubuntu上搭建交叉编译环境---arm-linux-gnueabihf-_第1张图片

 

arch/arm/boot/uImage: u-boot legacy uImage, Linux-3.16.57, Linux/ARM, OS Kernel Image (Not compressed), 2704456 bytes, Thu Dec 16 04:28:35 2021, Load Address: 0x30008000, Entry Point: 0x30008000, Header CRC: 0xD8E1C65A, Data CRC: 0xE4DA3E64
 

你可能感兴趣的:(ubuntu,linux,arm)