M1 Mac在Clion中配置CH32 RISC-V工具鏈

請移步知乎獲得最佳體驗(yàn):https://zhuanlan.zhihu.com/p/623828219
Windows版教程:https://zhuanlan.zhihu.com/p/623828663
感謝該
給我的啟發(fā)!準(zhǔn)備好CLion
Windows或Linux虛擬機(jī)并安裝好MounRiverStudio,推薦Linux虛擬機(jī)
從
官網(wǎng)下載好MacOS工具鏈

2.環(huán)境配置
解壓下載好的安裝包,根據(jù)電腦的芯片選擇解壓對應(yīng)的
openocd
及xpack-riscv-none-embed-gcc-8.2.0

將解壓好的兩個文件夾放在自己的想放的目錄下
Users
文件夾內(nèi)按下cmd+shift+.
顯示隱藏文件,打開.zshrc
或其他環(huán)境變量配置文件,如下所示添加環(huán)境變量,保存并關(guān)閉
1export RISV_GCC=/Users/baohan/ErBW_s/Code/Toolchains/xpack-riscv-none-embed-gcc-8.2.0/bin #替換為你的文件所在路徑2export RISV_OPENOCD=/Users/baohan/ErBW_s/Code/Toolchains/openocd-arm64/bin #替換為你的文件所在路徑3export PATH=$PATH:$RISV_GCC4export PATH=$PATH:$RISV_OPENOCD
3.遷移MRS文件
在虛擬機(jī)的MRS上對工程文件進(jìn)行一次成功編譯,會發(fā)現(xiàn)在工程目錄下多了一個
obj
文件夾,其內(nèi)包含了makefile
和subdir.mk
文件,這是在Clion中配置環(huán)境的關(guān)鍵進(jìn)入CLion中打開該工程文件,隨意打開一個
subdir.mk
,此時的C_SRCS
及最下面的可執(zhí)行.o
文件的文件路徑均為虛擬機(jī)文件路徑,用全局替換將路徑替換為Mac下的工程路徑注意
/
和\
的區(qū)別!Windows下MRS生成的文件路徑可能夾雜/
和\
,.o
文件則全為\
,全局替換會比較麻煩。一個可行的方法是在
obj
文件夾內(nèi)全局將\
替換為/
,隨后全局將/
替換為\
(注意區(qū)分這里!第二次替換時兩個斜杠前面都有一個空格?。?

4.編譯燒錄
在Clion中編輯配置,新建一個
Makefile Target

如圖選擇并填寫,將
Working Directory
改為${你的工程路徑}/obj
,makefile
選擇該文件夾下的makefile
文件


make clean
可以用于清理所有編譯的文件,運(yùn)行一次make clean
再運(yùn)行make all
可達(dá)到重新編譯的效果再新建一個配置,選擇
OpenOCD Download & Run
,如圖進(jìn)行填寫

Board config file
選擇上文openocd/bin
內(nèi)的wch-riscv.cfg
如果
Debug
失敗,可以將Debugger
改上文中xpack-riscv-none-embed-gcc-8.2.0/bin/
內(nèi)的riscv-none-embed-gdb
在
Before launch
內(nèi)增加運(yùn)行其他配置,選擇前文添加的make all
,這樣便會在運(yùn)行這個配置時自動進(jìn)行一次編譯。

然后就可以通過
運(yùn)行
和調(diào)試
進(jìn)行下載調(diào)試了!

5.注意事項(xiàng)
在Mac上想要新增文件會比較麻煩,因?yàn)樾枰謩酉?code>subdir.mk文件增加內(nèi)容,不過只需要仿照文件內(nèi)原有的內(nèi)容擴(kuò)寫即可。
配置完成后就盡量不要再去用mrs進(jìn)行編譯了,因?yàn)闀采w
subdir.mk