RT-Thread 5.0.1 qemu-virt64-aarch64 解决编译问题

前言

  • 最近在最新的 RT-Thread 上搭建 bsp qemu-virt64-aarch64 的编译环境,发现较新的 gcc 交叉编译器编译失败了。

  • 经过尝试较旧版本的 gcc 交叉编译工具链,终于编译通过了

  • 下载 gcc 交叉编译工具链,这里推荐使用 arm 官方的 gcc

  • 下载地址 https://developer.arm.com/downloads/-/gnu-a

在这里插入图片描述

配置编译环境

  • 下载 gcc-arm-10.2-2020.11-x86_64-aarch64-none-elf.tar.xz 后,进行解压,这里使用 ubuntu 20.04 Linux 环境

  • 进入 RT-Thread bsp qemu-virt64-aarch64 目录,新建一个 sh 脚本,如 setup_env.sh,内容如下

#!/bin/bash

export RTT_CC=gcc
export RTT_EXEC_PATH=/home/rtt/linux/tools/gcc-arm-10.2-2020.11-x86_64-aarch64-none-elf/bin
export RTT_CC_PREFIX=aarch64-none-elf-

export PATH=$PATH:$RTT_EXEC_PATH

echo "CC        => ${RTT_CC}"
echo "PREFIX    => ${RTT_CC_PREFIX}"
echo "EXEC_PATH => ${RTT_EXEC_PATH}"
  • 注意 RTT_EXEC_PATH 为 解压后的 gcc 交叉编译工具链的路径

  • 执行 source setup_env.sh 是环境变量更改生效

  • 可以通过输入 $ aarch64-none-elf-gcc -v 查看环境变量是否生效

在这里插入图片描述

编译

  • 直接使用 scons 就可以编译,如果没有安装过 scons,可以使用 sudo apt-get install scons 安装,然后 scons --menuconfig 可以图形界面配置一下工程

  • scons 编译通过

在这里插入图片描述

运行 qemu

  • 输入 ./qemu.sh 即可运行了

在这里插入图片描述

小结

  • RT-Thread 5.0.1 qemu-virt64-aarch64 基于 arm aarch64 平台,编译时交叉编译工具链不能太老或者太新。

  • 可以使用 RT-Thread 官方的 musl 的交叉编译工具链编译,可以正常的编译,并且可以编译 rt-smart 版本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

张世争

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

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

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

打赏作者

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

抵扣说明:

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

余额充值