首先在自己的电脑安装一个Ubuntu虚拟机,虚拟机的容量大于等于60GB。之后需要安装一些依赖包,执行如下命令:
sudo apt\-get install autoconf automake autotools\-dev curl libmpc\-dev libmpfr\-dev libgmp\-dev gawk build\-essential bison flex texinfo gperf libtool parchutils bc zlib1g\-dev git libexpat1\-dev
之后执行如下命令将riscv-gnu-toolchain源码拉取到虚拟机Ubuntu系统中。
git clone \-\-recursive [https://github\.com/riscv/riscv\-gnu\-toolchain](https:
这里如果网络不好的话可以采取以下两种方法。
- 一种是执行如下命令:
git clone [git@github\.com:riscv/riscv\-gnu\-toolchain\.git](mailto:git@github.com:riscv/riscv-gnu-toolchain.git)
cd riscv\-gnu\-toolchain
git submodule update \-\-init \-\-recursive
但是这种方法同样会受到网络的影响,导致下载不成功。
- 一种方法是将github.com改为kgithub.com,直接执行如下命令:
git clone [https://kgithub\.com/riscv/riscv\-gnu\-toolchain\.git](https:
cd riscv\-gnu\-toolchain
sudo vim \.gitmodules
.gitmodules文件内容如图1所示,这些是编译riscv-gnu-toolchian所需要的依赖库。
图1 .gitmodules文件
将.gitmodules的github.com都改为kgithub.com,如图2所示。
图2 修改后的.gitmodules文件
通常采用第二种方法可以成功拉取riscv-gnu-toolchain源码。
之后开始编译工具链,执行如下命令:
mkdir build && cd build
\.\./configure \-\-prefix=/opt/riscv/
--prefix表示工具链最终安装的文件夹。该命令编译linux-gnu-gcc,默认64位。之后执行如下命令进行安装。
make
make install
等待较长时间后,在/opt/riscv文件夹下会出现bin/include/sysroot等文件夹,其中bin文件就有之后需要用到的riscv64-unknown-linux-gnu-gcc和riscv64-unknown-linux-gnu-g++编译器。
|