11 Ubuntu | 省时省事| riscv-gnu-toolchain工具链安装|无需编译

文章目录

序言

大家好我是CSDN不知名放弃领域创作者早上真好,最近想放弃学习RISC-V了,所以首先得入门。

入门RISC-V,当然需要安装RISCV的工具链,目前大多数教程都是编译安装的,这很难顶。我从GitHub上clone这个仓库,使用的命令是

bash 复制代码
git clone --recursive https://github.com/riscv-collab/riscv-gnu-toolchain.git -b master --depth 1

明眼人都看得出来我真的已经尽力减小clone的量了,但是还是给我下了3个G的代码量(?)都没下完,查资料的时候看到一个老哥评论区里说"已经编译一周了",真是令人害怕。

但是编译安装其实并不是必要的吧,除了一些比较特殊的平台,其他平台有现成的编译包才是正常的吧,就像Linux常见的发行版和定制内核一样。

下载预编译包

预编译包当然是Github仓库的release里面都有,为什么我搜出来的教程都是编译安装的?!
riscv-gnu-toolchain Release

进去之后全是Nightly,基本隔几天就有个新tag,我一直翻到2022年,没有找到1个Stable,看来一定是我的问题吧!那就安装符合要求的最新版了。

我也不知道大家需要的版本是什么,知道的大家就直接下载,那么对于我来说,因为我刚刚接触RISC-V,所以看的是Tinyriscv这个知名开源项目,作者在Readme中给出了他的GNU工具链的百度网盘链接,下载下来后其名字是riscv64-unknown-elf-gcc-8.3.0-2020.04.0-x86_64-linux-ubuntu14.tar.gz;而我的系统是Ubuntu20.04,虽然不见得这个项目作者的包就不能用(多半可以用)但是我还是下载了一个比较新的,对比这个包中的名字选择了这个riscv64-elf-ubuntu-20.04-gcc-nightly-2023.12.20-nightly.tar.gz

解压缩,观察该包

将该包解压缩后,其文件呈现此态

复制代码
.
└── riscv
    ├── bin
    ├── include
    ├── lib
    ├── libexec
    ├── riscv64-unknown-elf
    └── share

后面的事就比较明显了,添加到环境变量里面应该就可以用了,节省了大量下载和编译安装的时间!

添加环境变量

首先,当前我是在Downloads目录下操作的,为了避免不小心给整个库删了,我们把它放到/opt目录下。

bash 复制代码
sudo cp -r ./riscv /opt/riscv

然后再向环境变量中写入

bash 复制代码
echo "export PATH=/opt/riscv/bin:$PATH" >> ~/.bashrc
source ~/.bashrc

如果终端不是Bash的话就修改写入的目标文件。比如我是.zshrc.

验证安装成功

bash 复制代码
riscv64-unknown-elf-gcc --version

非常好,我们与相对于现有大部分教程安装riscv-gnu的时间相比取得了领先地位!

相关推荐
吠品2 小时前
Wine 在 Linux 上运行 Windows 软件完整指南
java·linux·服务器
深念Y4 小时前
从 Windows 迁移到 Linux 开发环境的记录
linux·windows·链接·bun·ram·imdisk
知无不研5 小时前
Linux I/O复用之epoll
linux·服务器·epoll·socket编程
苏宸啊6 小时前
linux网络编程udp服务器和客户端代码编写(echo版本和字典版本)
linux·网络
~|Bernard|6 小时前
Linux 定时任务(Cron)完整教程
linux·运维·服务器
小雪崩7 小时前
嵌入式学习 day25:哈希表及排序与查找
linux·c语言·数据结构·学习·排序算法
深念Y7 小时前
linux桌面快捷方式开关脚本编写中的几个常见坑
linux·运维·服务器·快捷方式·桌面·kde
奇树谦8 小时前
HDD 为什么适合顺序大文件读写:从 RAID 5 到 RAID 50 的原理与性能分析
linux·运维·网络
hi_ro_a8 小时前
Linux基础开发工具详解
linux·运维·服务器
嵌入式阿蔡8 小时前
Linux_01:交叉编译与开发环境实战——从单片机跨到 Linux 的第一道坎
linux·运维·网络·单片机·嵌入式硬件·嵌入式实时数据库