精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

RISC-V編譯環境搭建

FPGA開源工坊 ? 來源:FPGA開源工坊 ? 2024-07-17 11:31 ? 次閱讀

riscv-gnu-toolchain是RISCV的交叉編譯工具鏈,在GitHub上的地址為:https://github.com/riscv-collab/riscv-gnu-toolchain,在國內Gitee上也有鏈接,每天同步一次:https://gitee.com/mirrors/riscv-gnu-toolchain。

第一步就是下載交叉編譯工具鏈:

git clone  git@github.com:riscv/riscv-gnu-toolchain.git
cdriscv-gnu-toolchain
git submodule update --init --recursive
第二步下載需要的庫文件:(我是ubuntu的環境)
sudoapt-getinstallautoconfautomakeautotools-devcurllibmpc-devlibmpfr-devlibgmp-devgawkbuild-essentialbisonflextexinfogperflibtoolpatchutilsbczlib1g-devlibexpat-dev
第三步設置環境變量:
exportRISCV="your path"http://path指你自己下載的工具鏈的路徑
exportPATH=$PATH:$RISCV/bin


source/etc/profile//可以讓關閉當前終端之后,設置的環境變量仍然有效
第四步進行編譯:
mkdirbuild//新建一個文件夾,讓整個目錄結構更清晰一點
cd build


//生成32位的編譯工具   riscv32-unknown-elf-***
../configure --prefix=$RISCV --with-arch=rv32gc --with-abi=ilp32d
make -j4


//64位的  riscv64-unknown-elf-***
../configure --prefix=$RISCV
make -j4




//64位的linux-gnu-gcc版本
../configure --prefix=$RISCV
make linux  -j4

以上按位數分可以編譯為32位和64位兩種,另外就是都可以編譯為elf版本和linux版本。


這個時候,你的交叉編譯工具鏈就做好了。那就寫個hello world來測試下吧。

928aeaee-43e8-11ef-b8af-92fbcf53809c.png

正常編譯出來hello.o了。

因為是在ubuntu的環境下,我們是不能直接執行這個a.o的,因為他是riscv的交叉編譯工具編譯出來的。下面就安裝一下qemu這個運行環境吧。

git clone https://git.qemu.org/git/qemu.git
cd qemu
git submodule init
git submodule update --recursive
riscv的qemu有兩種:

用戶模式,可以運行基于riscv指令集編譯的程序文件(target-list=riscv32-linux-user,target-list=riscv64-linux-user)

鏡像模擬器,可以運行基于riscv指令集編譯的linux鏡像(target-list=riscv32-softmmu,target-list=riscv64-softmmu)

因為我上面交叉編譯工具鏈就是32位的,所以qemu也使用32位的,這里要對應上,不然在qemu里面運行編譯好的結果的會報錯的。

cd qemu
./configure--target-list=riscv32-linux-user
make-j4
這個在編譯的時候可能會報錯,少庫啥的。 比如:
ERROR:CannotfindNinja
//報上面這個錯誤可以通過 apt-get install ninja-build 解決


ERROR: glib-2.48 gthread-2.0 is required to compile QEMU
//報上面這個錯誤可以通過 apt-get install libglib2.0-dev 解決
總之一個原則:少啥裝啥。 下圖就是編譯好的,注意里面的路徑,我們需要qemu-riscv32這個去執行工具鏈編譯好的二進制文件。這里可以像上面一樣把他也放進環境變量里面,我們以后用起來會比較方便,不用每次都寫qemu-riscv32的路徑了。

92a7cc4a-43e8-11ef-b8af-92fbcf53809c.png

最后就來看一下執行結果吧:

92ba6314-43e8-11ef-b8af-92fbcf53809c.png

至此,RISCV的編譯和運行環境就弄好了。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11125

    瀏覽量

    207937
  • Ubuntu
    +關注

    關注

    5

    文章

    553

    瀏覽量

    29308
  • 環境搭建
    +關注

    關注

    0

    文章

    53

    瀏覽量

    9027
  • RISC-V
    +關注

    關注

    44

    文章

    2142

    瀏覽量

    45714

原文標題:RISC-V編譯環境搭建

文章出處:【微信號:FPGA開源工坊,微信公眾號:FPGA開源工坊】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    RISC-V MCU開發 (一):集成開發環境

    (MRS)便是其中一種。 ? ? ?MRS是一款針對嵌入式項目(RISC-V/ARM)的集成開發環境,提供了包括編輯器、C編譯
    發表于 09-23 14:32 ?3919次閱讀
    <b class='flag-5'>RISC-V</b> MCU開發 (一):集成開發<b class='flag-5'>環境</b>

    RISC-V開發分析 CSM32RV20開發板環境搭建

    一、材料準備: ?1. RISC-V ?CSM32RV20開發板 ?X 1 ? ? 2. ? CSM Studio IDE(開發調試) 3. CSM-ISP(串口燒錄) ? 二、 IDE環境搭建
    發表于 03-01 09:05 ?1197次閱讀
    <b class='flag-5'>RISC-V</b>開發分析  CSM32RV20開發板<b class='flag-5'>環境</b><b class='flag-5'>搭建</b>

    risc-v有哪些開發環境

    risc-v的芯片支持哪些開發環境呢?keil?iar?
    發表于 08-29 21:14

    risc-v單片機使用分享

    最近發現一直使用的ch340芯片的廠家出了risc-v內核的芯片,搞了塊開發板嘗嘗鮮,沒有開發過這種內核的芯片,查資料說要用eclipse來搭編譯環境,準備等等看有沒有合適的 IDE發布,順便也研究下
    發表于 07-30 10:20

    怎么搭建risc-v學習平臺

    risc-v學習平臺搭建
    發表于 12-15 07:14

    RISC-V單片機快速入門01-開發環境搭建 相關資料下載

    在Nuclei Studio IDE下環境搭建工作,下一講,我們開始正式移植RT_Thread系統。一、基礎知識1.RISC-V簡介RISC-V(讀作“
    發表于 07-01 08:26

    RISC-V MCU開發 (一):集成開發環境

    一種。MRS是一款針對嵌入式項目(RISC-V/ARM)的集成開發環境,提供了包括編輯器、C編譯器、宏匯編、鏈接器、庫管理、仿真調試器和下載器等在內的完整開發資源,工具鏈方面增加了對WCH
    發表于 09-22 14:44

    【基于CH32V307VCT6】如何搭建RISC-V的開發環境

    的指令增添、定制工作。力求打造一款硬件工程師喜愛的、以RISC-V內核為主的嵌入式集成開發環境。MounRiver工作室由一群懷揣共同目標的“奮斗者”們組成:他們中有經驗豐富的工具鏈開發工程師、有鉆研
    發表于 03-20 10:09

    目前RISC-V都支持哪些開發環境

    RISC-V的小白一枚,想擴展一下有關RISC-V的知識,請問目前RISC-V都支持那些通用的開發環境?還是必須使用各廠商的特定的開發環境
    發表于 03-20 13:57

    RISC-V的開發環境

    如何搭載RISC-V的開發環境,主要注意什么?
    發表于 03-24 08:17

    RISC-V嵌入式開發準備篇1:編譯過程簡介

    本文的目的是對編譯過程進行簡單的科普與回顧,為后續詳細介紹“RISC-V GCC工具鏈”和“RISC-V匯編語言程序設計”打下基礎。
    發表于 11-02 19:06 ?38次下載
    <b class='flag-5'>RISC-V</b>嵌入式開發準備篇1:<b class='flag-5'>編譯</b>過程簡介

    RISC-V單片機快速入門01-開發環境搭建

    在Nuclei Studio IDE下環境搭建工作,下一講,我們開始正式移植RT_Thread系統。一、基礎知識1.RISC-V簡介RISC-V(讀作“
    發表于 11-13 16:21 ?12次下載
    <b class='flag-5'>RISC-V</b>單片機快速入門01-開發<b class='flag-5'>環境</b><b class='flag-5'>搭建</b>

    RISC-V MCU CSM32RV20開發(一):環境搭建

    RV32IMAC Core (2.6 CoreMark/MHz)。【準備】 IDE: CSMStudio ,也是南京中科微針對嵌入式項目RISC-V系列MCU開發的的集成開發環境,提供了包括編輯器、C編譯器、宏匯編、鏈接器、
    發表于 11-18 17:06 ?18次下載
    <b class='flag-5'>RISC-V</b> MCU CSM32RV20開發(一):<b class='flag-5'>環境</b><b class='flag-5'>搭建</b>

    關于RISC-V MCU開發實例(一):環境搭建

    關于RISC-V MCU開發實例:咱們以CSM32RV20的開發環境搭建為例子,我們可以參看動能世紀客戶分享的案例情況。
    的頭像 發表于 07-20 14:17 ?2208次閱讀
    關于<b class='flag-5'>RISC-V</b> MCU開發實例(一):<b class='flag-5'>環境</b><b class='flag-5'>搭建</b>

    RISC-V MCU CSM32RV20開發(一):環境搭建

    RISC-V MCU CSM32RV20開發(一):環境搭建,RISCV核的低功耗MCU。
    的頭像 發表于 01-20 19:06 ?1711次閱讀
    <b class='flag-5'>RISC-V</b> MCU CSM32RV20開發(一):<b class='flag-5'>環境</b><b class='flag-5'>搭建</b>