栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

RT-Thread Smart Ubuntu 20.04.4 RISCV64 编译环境的搭建

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

RT-Thread Smart Ubuntu 20.04.4 RISCV64 编译环境的搭建

前言
  • RT-Thread Smart 的BSP rt-smartbspd1-allwinner-nezha,也就是全志 D1s的哪吒开发板,基于RISCV64平台,需要RISCV64的交叉编译环境
  • RISCV64 不属于ARM平台,算是当前一个新的RISC架构的平台,rt-smart下使用:riscv64-unknown-linux-musl- 系列的gcc 交叉编译工具链
步骤
  • 可以在ubuntu下载工具链,然后设置环境变量即可,我这里使用 python 脚本下载,这个脚本来自 ART-Pi-smarttoolsget_toolchain.py,感觉挺好用的
  • 把 ART-Pi-smarttoolsget_toolchain.py ART-Pi-smarttoolsci.py 两个脚本,拷贝到 rt-smart的tools目录下,shell 终端执行:# python get_toolchain.py riscv64,即可自动把 riscv64的gcc 交叉工具链下载下来,目录地址为:rt-thread/tools/gnu_gcc/riscv64-linux-musleabi_for_x86_64-pc-linux-gnu/bin,这里的rt-thread,我切换到了 rt-smart分支
  • 设置环境变量:把 ART-Pi-smartsmart-env.sh 拷贝到 rt-smart目录下,执行如下的操作即可
/home/rtthread/rt-thread# source smart-env.sh riscv64
Arch      => riscv64
CC        => gcc
PREFIX    => riscv64-unknown-linux-musl-
EXEC_PATH => /home/rtthread/rt-thread/tools/gnu_gcc/riscv64-linux-musleabi_for_x86_64-pc-linux-gnu/bin
  • 这样 riscv64-unknown-linux-musl- gcc 交叉编译环境就配置好了
验证
  • shell 命令行输入:riscv64-unknown-linux-musl-gcc -v,正常执行,说明 gcc 交叉编译工具正常配置了
root@pluto-os:/home/rtthread/rt-thread# riscv64-unknown-linux-musl-gcc -v
Using built-in specs.
COLLECT_GCC=riscv64-unknown-linux-musl-gcc
COLLECT_LTO_WRAPPER=/home/rtthread/rt-thread/tools/gnu_gcc/riscv64-linux-musleabi_for_x86_64-pc-linux-gnu/bin/../libexec/gcc/riscv64-unknown-linux-musl/10.1.0/lto-wrapper
Target: riscv64-unknown-linux-musl
Configured with: /builds/alliance/risc-v-toolchain/riscv-gcc/configure --target=riscv64-unknown-linux-musl --prefix=/builds/alliance/risc-v-toolchain/install-native/ --with-sysroot=/builds/alliance/risc-v-toolchain/install-native//riscv64-unknown-linux-musl --with-system-zlib --enable-shared --enable-tls --enable-languages=c,c++ --disable-libmudflap --disable-libssp --disable-libquadmath --disable-libsanitizer --disable-nls --disable-bootstrap --src=/builds/alliance/risc-v-toolchain/riscv-gcc --disable-multilib --with-abi=lp64 --with-arch=rv64imafdc --with-tune=rocket 'CFLAGS_FOR_TARGET=-O2   -mcmodel=medany' 'CXXFLAGS_FOR_TARGET=-O2   -mcmodel=medany'
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 10.1.0 (GCC) 
编译BSP d1-allwinner-nezha
  • 进入 d1-allwinner-nezha目录下,可以使用 scons --clean 清理工程
  • 可以使用:scons --menuconfig 图形配置工程
  • 使用:scons 编译BSP
编译产物
  • d1-allwinner-nezha 当前编译,需要修复几个编译问题,编译通过,会生成产物如下

小结
  • 其实环境搭建就是 gcc 交叉编译工具链的下载与环境变量配置
  • 后面讲一下如何在windows下编译RISCV64平台的BSP
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/962262.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号