RISC-V GNU Toolchain工具链安装保姆级教程 Ubuntu系统亲测可用 避坑指南

1.前言

  本人最近在做有关RISC-V的项目开发,需要用到RISC-V下的GNU Toolchain,在安装的过程中可以说是极其痛苦,一方面是网上的相关资料实在是少之又少,另一方面是用着仅有的资料安装时出现了太多的问题,而解决这些问题又不知如何下手,搜也搜不到,困扰了我很久。

  在老师的帮助下,我最终通过Github上的一个项目,成功安装上了该工具链,实在是不易,特此来发布一篇文章来帮助广大同学。

2.安装过程与方法

  首先给出官方仓库的链接 https://github.com/riscv/riscv-gnu-toolchain

  在最开始安装时,我先参考了这篇文章 https://blog.csdn.net/weiqi7777/article/details/88045720,然而在clone RISC-V GNU Toolchain官方仓库时出现了各种各样的问题,反复重试了很多次都未能解决。

  最终我在https://github.com/cliffordwolf/picorv32#linking-binaries-with-newlib-for-picorv32这个项目的README文件中找到了整个工具链的自动安装脚本,省时省力。具体操作如下:

2.1 准备工作

  1)完成工具链的安装之前,需要先安装如下的包,执行下面的命令即可。

sudo apt-get install autoconf automake autotools-dev curl libmpc-dev \
            libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo \
            gperf libtool patchutils bc zlib1g-dev git libexpat1-dev

  本人在安装时,除了在安装texinfo这个包时出现了问题,其他包都非常顺利,但最后发现即使没有texinfo也没有什么大碍。

  2)安装工具链还需要用到上述链接 https://github.com/cliffordwolf/picorv32#linking-binaries-with-newlib-for-picorv32:picorv32这个项目中的Makefile文件,该文件里有写好的自动安装脚本,因为它也不大,我当时图方便直接把picorv32这个项目下载下来了,只下载里面的Makefile文件应该也是可以的,后续的工具链安装我也直接装在了该文件夹里面。

2.2 安装

  1)cd到与picorv32项目中的Makefile文件同级的目录下,执行:

make download-tools

  便开始了漫长的下载过程,期间在安装完一个子模块后可能会卡住然后报错,这种情况绝大多数是因为网络原因造成的,如果失败了可以再执行一次上述的命令,当一个子模块安装好,重新执行命令时会自动跳过安装好的模块,继续下一个模块的安装,这一点还是让我很欣慰的。

  2)在安装完所有的模块后,执行如下命令,便可以构建一个针对纯RV32I CPU的完整工具链了:

make -j$(nproc) build-tools

  如果想要自定义安装想要的ISA,可以将上述命令替换成下表中的命令,安装的路径默认在/opt目录下

  回车后在命令行中输入:y或yes或YES即可执行

  该步骤会等待得比较久,在执行的前半部分同样会出现由于网络问题造成的报错,重复执行上述步骤即可,在后半部分会很顺畅。

2.3 安装结果

 本人安装的是RV32IM,在执行命令的目录下生成了riscv-gnu-toolchain-riscv32im文件夹,下面包含了所有库和工具。

  对应的opt目录下便生成了riscv32im文件夹,至此,RISC-V GNU Toolchain安装全部完成。

 

3.工具链的使用

  具体的使用方法可以参考B站上的这个视频,发现它简直是意外之喜,给了我很大的帮助,这个视频还介绍了工具链的相关基础知识,非常适合初学者学习,作为为数不多的网络资源,简直太宝贵了。

  这位作者安装的是64位版本的,想安装该版本的同学同样可以参照这期视频来进行安装,同样也是写好的自动安装脚本,非常方便。

 

  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值