RT-Smart 官方 ARM 32 平台 musl gcc 工具链下载

前言

  • RT-Smart 的开发离不开 musl gcc 工具链,用于编译 RT-Smart 内核与用户态应用程序

  • RT-Smart musl gcc 工具链代码当前未开源,但可以下载到 RT-Thread 官方编译好的最新的 musl gcc 工具链

ARM 32位 平台

  • 比如 RT-Smart 最好用的 ARM32 位 qemu 平台: qemu-vexpress-a9,位于 rt-thread/bsp/qemu-vexpress-a9,既支持 RT-Thread 内核,也支持 RT-Smart 内核,一般学习研究 RT-Smart,这个是首选,不需要硬件,让 RT-Smart 跑起来,并且可以软件 Debug 调试,对于研究与分析内核的功能与组件运行,非常的方便。

  • bsp qemu-vexpress-a9 属于 ARM 32位 平台,由于不同的平台编译工具链不同, 如果开启 RT-Smart,当前必须使用 musl gcc 工具链。

  • musl gcc 工具链,是基于 musl libc 编译的 gcc 交叉工具链,musl libc 与 Linux glibc、ucLibc 等,都属于 标准C 库。RT-Smart 当前使用 musl gcc 工具链。

Linux 开发平台下载 ARM 32位 musl gcc 工具链

  • 下载地址 https://download.rt-thread.org/download/rt-smart/toolchains/arm-linux-musleabi_for_x86_64-pc-linux-gnu_latest.tar.bz2

  • 这个是 Linux 平台上的 musl gcc 工具链,可以使用 Linux tar 命令进行解压

zhangsz@zhangsz:~/smart/tools/gnu_gcc$ tar xjf /mnt/hgfs/work/ldso/musl_gcc/arm-linux-musleabi_for_x86_64-pc-linux-gnu_211536-3de435f234.tar.bz2 -C ./
zhangsz@zhangsz:~/smart/tools/gnu_gcc$ ls
aarch64-linux-musleabi_for_x86_64-pc-linux-gnu  arm-linux-musleabi_for_x86_64-pc-linux-gnu
  • 我当前放在了 /home/zhangsz/smart/tools/gnu_gcc 路径下

  • 设置环境变量,可以使用 shell 脚本 env_arm.sh

#!/bin/bash# arm musl gcc
export RTT_CC=gcc
export RTT_EXEC_PATH=/home/zhangsz/smart/tools/gnu_gcc/arm-linux-musleabi_for_x86_64-pc-linux-gnu/bin
export RTT_CC_PREFIX=arm-linux-musleabi-export PATH=$PATH:$RTT_EXEC_PATH
  • 脚本设置执行权限 chmod 777 env_arm.sh

  • 使能环境变量 source env_arm.sh

  • 查看 musl gcc 工具环境变量是否设置正常 arm-linux-musleabi-gcc -v

在这里插入图片描述

Windows 开发平台下载 ARM 32位 musl gcc 工具链

  • 开发 RT-Smart,建议在 ubuntu 等 Linux 环境下开发,当然也支持 Windows 下 env 工具开发

  • 下载 windows 版本的 ARM 32位平台 musl gcc 交叉编译工具链,地址如下

https://download.rt-thread.org/download/rt-smart/toolchains/arm-linux-musleabi_for_i686-w64-mingw32_latest.zip
  • zip 格式,可以在 windows 下使用 常用的解压缩工具解压到指定路径

  • windows 下使用 bat 批处理脚本设置环境变量

  • 新建 env_arm.bat 脚本

@set RTT_CC=gcc
@set RTT_EXEC_PATH=%cd%\tools\gnu_gcc\arm-linux-musleabi_for_i686-w64-mingw32\bin
@set RTT_CC_PREFIX=arm-linux-musleabi-
@set PATH=%RTT_EXEC_PATH%;%ENV_ROOT%\tools\gnu_gcc\arm_gcc\mingw\bin;%PATH%
  • 注意修改 musl gcc 工具链的路径

  • windows 下,使用 RT-Thread ENV 工具执行脚本即可 env_arm.bat

编译 RT-Smart 内核

  • bsp qemu-vexpress-a9

  • ubuntu 开发,使用 scons --menuconfig 图形界面配置,选择 RT-Smart

在这里插入图片描述

在这里插入图片描述

  • 然后 scons -j8 就可以编译内核了

在这里插入图片描述

运行 RT-Smart

  • bsp qemu-vexpress-a9

  • ubuntu Linux 环境,运行 qemu.sh 脚本即可运行 RT-Smart 内核

  • 小插曲: 直接运行 默认的 qemu.sh,如果 qemu 启动报错,需要关闭 -nographic,脚本如下

qemu-system-arm -M vexpress-a9 -smp cpus=2 -kernel rtthread.bin -nographic -sd sd.bin

在这里插入图片描述

退出 qemu-vexpress-a9

  • qemu 一般使用 按下 CTRL+ a 组合键 ,松开, 然后紧接着按 x 即可退出 qemu

小结

  • 本篇主要说明 RT-Smart ARM 32位 musl gcc 工具链的下载方法, RT-Smart 内核编译的方法

  • RT-Smart 支持 用户态应用程序,类似于 Linux 的应用程序,应用程序 app 可以单独的编译,编译工具链依旧使用 musl gcc 工具链

  • 注意 arm (32位)平台与 aarch64 (ARM 64位)使用不同的 musl gcc 工具链

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/298443.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

18.仿简道云公式函数实战-数学函数-AVERAGE

1. AVERAGE函数 AVERAGE 函数可用于计算一组数值的算术平均值。 2. 函数用法 AVERAGE(数字1,数字2,...) 3. 函数示例 AVERAGE(1,3,5),返回结果为 3 4. 代码实战 首先我们在function包下创建math包,在math包下创建AvgFunction类,代码如…

通过字符设备驱动点亮板子上的led灯

通过字符设备驱动点亮板子上的led灯 app: test.c char buf[3] 1 0 0 0 1 0 0 0 1 ------------------|------------------------ kernel: led_driver.c -------------------|------------------------ hardware: RGB_led 应用程序如何将数据传递给驱动(读写…

工程数学软件:PTC Mathcad Prime 9.0 Crack

PTC Mathcad Prime 是工程数学软件的行业标准,使您能够解决最复杂的问题并共享您的工程计算。借助 PTC Mathcad Prime 9,工程计算变得更加出色。此版本引入了关键应用程序、符号引擎、数字引擎和可用性增强功能。 可用性和生产力更新        Mathc…

制作一个可以离线安装的Visual Studio安装包

须知 前提条件,需要电脑可以正常上网且网速还行,硬盘可以空间容量足够大,怎么判断容量够用?由组件数量的多少来决定。Visual Studio 频道和发布节奏 https://learn.microsoft.com/zh-cn/visualstudio/productinfo/release-rhythm…

visual studio code B站教程:GPT4

B站教程:AI编程辅助神器-CodeMoss使用介绍_哔哩哔哩_bilibili 通用 General 按 Press 功能 Function Ctrl Shift P,F1 显示命令面板 Show Command Palette Ctrl P 快速打开 Quick Open Ctrl Shift N 新窗口/实例 New window/instance Ctrl Sh…

文本编辑器:Sublime Text (安装+汉化)

下载 Sublime Text - Text Editing, Done Righthttps://www.sublimetext.com/Sublime Text官网 支持mac,Linux,Windows 安装 选择安装路径 next install 选择安装位置安装就行了 汉化 进入了主界面按 CTRLshiftp 输入install 选择第一个 弹窗就按确…

养车平台源码定制化需求指南:10种实用功能一览

作为养车平台源码定制化领域的专家,我将向您介绍10种实用功能,帮助您更好地满足定制化需求,并提升用户体验。 1. 个性化主题定制 定制化养车平台源码可轻松实现个性化主题定制,包括颜色、字体、背景等,提供多样化选择…

vue封装文件上传组件

场景&#xff1a;为了安全起见&#xff0c;文件上传需要转为base64格式进行上传。 实现这样的效果。 如图 1、封装uploadFile.vue组件 <template><div class"upload-BOX"><el-uploadclass"avatar-uploader"action"#"ref"…

金蝶云星空权限项表结构

文章目录 金蝶云星空权限项表结构BOS平台【权限项】MSSQL脚本使用场景优点减少手工一个个创建的人工成本&#xff0c;还容易出错保留内码&#xff0c;可以在代码层级使用&#xff0c;方便 金蝶云星空权限项表结构 BOS平台【权限项】 MSSQL脚本 --权限项主表 SELECT * FROM db…

Python 数据分析 Matplotlib篇 plt.rcParams 字典(第5讲)

Python 数据分析 Matplotlib篇 plt.rcParams字典(第5讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ�…

静态HTTP的常见问题和解决方法

大家好&#xff0c;欢迎来到今天的“静态HTTP大讲堂”&#xff01;今天我们要聊聊静态HTTP的常见问题和解决方法。别小看这些问题哦&#xff0c;它们就像是那些顽皮的小妖精&#xff0c;时不时地给你的网站搞点恶作剧。不过别担心&#xff0c;有我在&#xff0c;这些小妖精都得…

OpenAI科学家Hyung Won Chung演讲精华版

文章目录 第一个观点&#xff1a;涌现第二个观点&#xff1a;如何扩大规模1、标记化2、嵌入3、计算4、评估&#xff08;损失函数&#xff09;5、反向传播 最近从Google跳槽到OpenAI的AI科学家 Hyung Won Chung 比较拗口&#xff0c;我就简称尚哥了 他最近做了一个技术演讲 …