riscv-gnu-toolchain 交叉编译器如何构建?

安装依赖工具

shell 复制代码
sudo apt-get install git autoconf automake autotools-dev curl python3 libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf patchutils bc libexpat-dev libglib2.0-dev ninja-build zlib1g-dev pkg-config libboost-all-dev libtool libssl-dev libpixman-1-dev libpython-dev virtualenv libmount-dev libsdl2-dev

工具链下载

开始下载 riscv-gnu-toolchain

shell 复制代码
git clone https://gitee.com/mirrors/riscv-gnu-toolchain
cd riscv-gnu-toolchain

下载 RISC-V 平台的 C 语言编译器源代码仓库

shell 复制代码
git clone -b riscv-gcc-10.2.0 https://gitee.com/mirrors/riscv-gcc

下载测试框架源代码仓库,即 riscv-dejagnu

shell 复制代码
git clone https://gitee.com/mirrors/riscv-dejagnu

下载 GNU 的 C 库源代码仓库,也就是 riscv-glibc

shell 复制代码
git clone -b riscv-glibc-2.29 https://gitee.com/mirrors/riscv-glibc

下载用于嵌入式的轻量级 C 库源代码仓库,即 riscv-newlib

shell 复制代码
git clone https://gitee.com/mirrors/riscv-newlib

下载二进制工具集合源代码仓库 riscv-binutils

shell 复制代码
git clone -b riscv-binutils-2.35 https://gitee.com/mirrors/riscv-binutils-gdb riscv-binutils

下载 GDB 软件调试器源代码仓库 riscv-gdb

shell 复制代码
git clone -b fsf-gdb-10.1-with-sim https://gitee.com/mirrors/riscv-binutils-gdb riscv-gdb

配置工具链

shell 复制代码
kdir build  #建立build目录
#配置操作,终端一定要切换到build目录下再执行如下指令
../configure --prefix=/opt/riscv/gcc --enable-multilib --target=riscv64-multlib-elf

编译工具链

复制代码
sudo make -j8

这个指令在编译完成后会自动安装到"/opt/riscv/gcc"目录,由于要操作"/opt/riscv/gcc"目录需要超级管理员权限,所以我们要记得加上 sudo

切换到"/opt/riscv/gcc/bin"目录下,执行如下指令

shell 复制代码
riscv64-unknown-elf-gcc -v

看是否有riscv64-unknown-elf-gcc版本信息

相关推荐
玩转4G物联网4 小时前
零基础玩转物联网-串口转以太网模块如何快速实现与MQTT服务器通信
服务器·物联网·网络协议·tcp/ip·信息与通信·iot·fs100p
爬呀爬的水滴4 小时前
解决Ubuntu24.04版本,右键没有共享选项的问题
linux·服务器·ubuntu·samba·共享文件夹
雾岛心情5 小时前
【黑客与安全】Linux的常用命令之系统架构信息获取系列命令
linux·运维·服务器
卫生纸不够用6 小时前
(三)Linux性能优化-CPU-CPU 使用率
linux·运维·服务器
Clownseven7 小时前
Ubuntu 24.04 LTS 长期支持版发布:对服务器用户意味着什么?新特性、升级建议与性能影响初探
linux·服务器·ubuntu
晴天¥7 小时前
第二部分-IP及子网划分
服务器·网络·tcp/ip
wanhengidc7 小时前
高防服务器中高防和硬防之间的区别
运维·服务器·网络
Xam_d_LM8 小时前
【Linux】服务器反向代理自动续签免费 Let‘s Encrypt 证书报错解决方法
linux·运维·服务器·反向代理·lets encrypt·http-01·证书续签
wanhengidc8 小时前
服务器硬防的应用场景都有哪些?
运维·服务器·网络
复园电子8 小时前
USB扩展器与USB服务器的2个主要区别
运维·服务器