查看: 1168|回复: 0
收起左侧

rocket-chip工具链的编译与使用

[复制链接]

  离线 

  • TA的每日心情
    奋斗
    2021-1-15 13:53
  • 签到天数: 26 天

    [LV.4]

    发表于 2020-8-18 16:20:07 | 显示全部楼层 |阅读模式

    有人预言,RISC-V或将是继Intel和Arm之后的第三大主流处理器体系。欢迎访问全球首家只专注于RISC-V单片机行业应用的中文网站

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    3.2 rocket-chip工具链的编译与使用

    主要资料来源:
    https://github.com/riscv/riscv-tools/tree/2faac3398af956cea9f1cbdc64b0575f807fc6a8


    rocket-chip工具链的编译步骤:


    1、 先配置好ubuntu的环境,github上的教程都是基于ubuntu的,这就是Linux系统推荐ubuntu的原因。

          安装以下工具,并确保GCC的版本大于或等于4.8。

    $ sudo apt-get install autoconf automake autotools-dev curl device-tree-compiler libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat1-dev pkg-config

    2、 然后进入riscv-tools的目录进行目录更新。因为riscv-tools的内容太多,所以需要二次更新。

         同时需要设置环境变量,具体的路径按各自需求来完成配置。


    $ cd rocket-chip/riscv-tools
    $ git submodule update --init --recursive
    $ export RISCV=/path/to/install/riscv/toolchain

    3、 第三步是编译交叉工具链。

         我一般是直接使用build.sh的脚本,把全部工具都编译一遍,我生成的是32位的交叉工具链。


    $ ./build.sh

    4、 第四步是漫长的等待,riscv-tools工具中编译时间最长的是riscv-gnu-toolchain,其他工具的编译时间还好。

         需要等至全部工具编译成功。


    编译交叉工具链时可能遇到的问题:

    1、出现“c++11”字样的问题:


    这个问题是由于gcc的版本过低引起的,gcc的版本不能低于4.8,可以用gcc –version查看gcc的版本。


    2、出现“error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+”的字样。

        这是由于gcc的依赖工具版本不够高,可以尝试以下操作:


    cd <riscv-tools>/riscv-gnu-toolchain/riscv-gcc
    contrib/download_prerequisites
    sudo yum install gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel

    3、出现error不用怕,只要根据error的提示,在谷歌/百度中搜相应的关键字即能找到解决的方法,因为多数的error都是因为ubuntu的环境没有配置好而引起的,只要落实第一步的全部工具都安装成功,那么交叉工具链必然能编译成功。



    本篇完,感谢关注:RISC-V单片机中文网






    上一篇:如何建立自己的RISC-V编译环境--C_Code?
    下一篇:RISC-V &amp; rocket-chip目录
    RISCV作者优文
    全球首家只专注于RISC-V单片机行业应用的中文网站
    回复

    使用道具 举报

    高级模式
    B Color Image Link Quote Code Smilies

    本版积分规则

    关闭

    RISC-V单片机中文网上一条 /2 下一条



    版权及免责声明|RISC-V单片机中文网 |网站地图

    GMT+8, 2024-11-6 08:00 , Processed in 0.875462 second(s), 46 queries .

    快速回复 返回顶部 返回列表