如何在Ubuntu上搭建编译环境:修订间差异
跳转到导航
跳转到搜索
无编辑摘要 |
无编辑摘要 |
||
| 第27行: | 第27行: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
然后在当前终端下执行<code>source ~/.bashrc</code> | 然后在当前终端下执行<code>source ~/.bashrc</code>使PATH环境变量生效,然后执行<code>riscv64-unknown-elf-gcc -v</code>应该可以看到GCC运行的打印。 | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ source ~/.bashrc | jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ source ~/.bashrc | ||
jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ echo $PATH | jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ echo $PATH | ||
/data/toolchain_gcc_t-head_linux/bin:/home/jenkins/.local/bin:/data/toolchain_gcc_t-head_linux/bin:/data/jenkins_tools:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games | /data/toolchain_gcc_t-head_linux/bin:/home/jenkins/.local/bin:/data/toolchain_gcc_t-head_linux/bin:/data/jenkins_tools:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games | ||
jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ riscv64-unknown-elf-gcc -v | jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ riscv64-unknown-elf-gcc -v | ||
Using built-in specs. | Using built-in specs. | ||
| 第47行: | 第48行: | ||
== 安装环境依赖 == | == 安装环境依赖 == | ||
Bouffalo SDK Build依赖CMake工具,在Ubuntu下可以直接使用APT工具安装: | |||
<syntaxhighlight lang="bash"> | |||
$ sudo apt update | $ sudo apt update | ||
$ sudo apt install cmake | $ sudo apt install cmake | ||
</syntaxhighlight> | </syntaxhighlight> | ||
CMake安装成功之后,可以进入到Bouffalo SDK目录下的<code>examples/helloworld</code>,执行<code>make</code>即可看到编译的日志。 | |||
</ | |||
2025年7月16日 (三) 04:41的最新版本
安装编译工具链
T-Head GCC Toolchain的地址:https://github.com/bouffalolab/toolchain_gcc_t-head_linux
使用Git clone下载T-Head GCC Toolchain: git clone git@github.com:bouffalolab/toolchain_gcc_t-head_linux.git
假设clone到了/data/toolchain_gcc_t-head_linux目录下:
jenkins@debian:/data/toolchain_gcc_t-head_linux$ ls -l
total 28
drwxr-xr-x 2 jenkins jenkins 4096 Dec 24 2022 bin
drwxr-xr-x 3 jenkins jenkins 4096 Dec 24 2022 include
drwxr-xr-x 3 jenkins jenkins 4096 Dec 24 2022 lib
drwxr-xr-x 2 jenkins jenkins 4096 Dec 24 2022 lib64
drwxr-xr-x 3 jenkins jenkins 4096 Dec 24 2022 libexec
drwxr-xr-x 5 jenkins jenkins 4096 Dec 24 2022 riscv64-unknown-elf
drwxr-xr-x 7 jenkins jenkins 4096 Dec 24 2022 share
然后把/data/toolchain_gcc_t-head_linux/bin路径加入到系统PATH环境变量中,假设你使用的是bash,则在~/.bashrc文件最后一行添加:
... bashrc origin data ...
# add t-head gcc toolchain to PATH
export PATH=/data/toolchain_gcc_t-head_linux/bin:$PATH
然后在当前终端下执行source ~/.bashrc使PATH环境变量生效,然后执行riscv64-unknown-elf-gcc -v应该可以看到GCC运行的打印。
jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ source ~/.bashrc
jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ echo $PATH
/data/toolchain_gcc_t-head_linux/bin:/home/jenkins/.local/bin:/data/toolchain_gcc_t-head_linux/bin:/data/jenkins_tools:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
jenkins@debian:/data/toolchain_gcc_t-head_linux/bin$ riscv64-unknown-elf-gcc -v
Using built-in specs.
COLLECT_GCC=riscv64-unknown-elf-gcc
COLLECT_LTO_WRAPPER=/data/toolchain_gcc_t-head_linux/bin/../libexec/gcc/riscv64-unknown-elf/10.2.0/lto-wrapper
Target: riscv64-unknown-elf
Configured with: /mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/./source/riscv/riscv-gcc/configure --target=riscv64-unknown-elf --with-gmp=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/lib-for-gcc-x86_64-linux --with-mpfr=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/lib-for-gcc-x86_64-linux --with-mpc=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/lib-for-gcc-x86_64-linux --with-libexpat-prefix=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/lib-for-gcc-x86_64-linux --with-libmpfr-prefix=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/build-Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/lib-for-gcc-x86_64-linux --with-pkgversion='Xuantie-900 elf newlib gcc Toolchain V2.6.1 B-20220906' CXXFLAGS='-g -O2 -DTHEAD_VERSION_NUMBER=2.6.1 ' --enable-libgcctf --prefix=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1 --disable-shared --enable-threads=posix --enable-languages=c,c++ --with-system-zlib --enable-tls --with-newlib --with-sysroot=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/build-gcc-riscv64-unknown-elf/Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/riscv64-unknown-elf --with-native-system-header-dir=/include --disable-libmudflap --disable-libssp --disable-libquadmath --disable-libgomp --disable-nls --disable-tm-clone-registry --src=/mnt/ssd/jenkins_iotsw/slave/workspace/Toolchain/build-gnu-riscv/./source/riscv/riscv-gcc --enable-multilib --with-abi=lp64d --with-arch=rv64gcxthead 'CFLAGS_FOR_TARGET=-Os -mcmodel=medany' 'CXXFLAGS_FOR_TARGET=-Os -mcmodel=medany'
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 10.2.0 (Xuantie-900 elf newlib gcc Toolchain V2.6.1 B-20220906)
安装环境依赖
Bouffalo SDK Build依赖CMake工具,在Ubuntu下可以直接使用APT工具安装:
$ sudo apt update
$ sudo apt install cmake
CMake安装成功之后,可以进入到Bouffalo SDK目录下的examples/helloworld,执行make即可看到编译的日志。