Linux Ubuntu 交叉编译工具链 arm-linux-gnueabihf 安装 32 64

Linaro 出品的交叉编译器4.9:
https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/
在这里插入图片描述
终端输入:mkdir tool
在这里插入图片描述
将刚刚下载的[gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz]放入tool文件夹中。
在这里插入图片描述

在 Ubuntu 中创建目录:/usr/local/arm,命令如下:
sudo mkdir /usr/local/arm

创建完成以后将刚刚拷贝的交叉编译器复制到/usr/local/arm 这个目录中,在终端使用命令
“ cd ” 进 入 到 存 放 有 交 叉 编 译 器 的 目 录 , 比 我 前 面 将 交 叉 编 译 器 拷 贝 到 了 目 录
“/home/xue1995/linux/tool”中,然后使用如下命令将交叉编译器复制到/usr/local/arm 中:

sudo cp gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/ -f
在这里插入图片描述

终端输入:cd /usr/local/arm
解压命令:sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz

等待解压完成(几分钟),解压完成以后会生成一个名为“gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf”的文件夹,这个文件夹里面就是我们的交叉编译工具链。

修改环境变量,使用 gedit 打开/etc/profile 文件,命令如下:
sudo gedit /etc/profile

打开/etc/profile 以后,在最后面输入如下所示内容:
export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin

添加完成以后的/etc/profile
在这里插入图片描述
修改好以后就保存退出,重启 Ubuntu 系统(注销即可),交叉编译工具链(编译器)就安装成功了。

安装相关库

在使用交叉编译器之前还需要安装一下其它的库,命令如下:
sudo apt-get install lsb-core lib32stdc++6

等待这些库安装完成

交叉编译器验证

首先查看一下交叉编译工具的版本号,输入如下命令:
arm-linux-gnueabihf-gcc -v

如果交叉编译器安装正确的话就会显示版本号,如图所示:
在这里插入图片描述
测试交叉编译器:
终端输入:
mkdir driver
cd driver/
mkdir board_driver
cd board_driver
在这里插入图片描述
下载一份例子:
https://cloud.189.cn/t/IFfeUzYb6Zbm
将其放入/home/xue1995/linux/driver/board_driver
在这里插入图片描述
cd 1_leds
在这里插入图片描述
执行 make 命令进行编译
在这里插入图片描述
如下命令查看 led.o 文件信息:
file led.o
在这里插入图片描述
从图可以看到 led.o 是 32 位 LSB 的 ELF 格式文件,目标机架构为 ARM,说明我们的交叉编译器工作正常。

猜你喜欢

转载自blog.csdn.net/qq_29246181/article/details/106213106