M1 Mac在Clion中配置CH32 RISC-V工具链
1.前言
2.环境配置
- 解压下载好的安装包,根据电脑的芯片选择解压对应的
openocd
及xpack-riscv-none-embed-gcc-8.2.0
- 将解压好的两个文件夹放在自己的想放的目录下
- 在
Users
文件夹内按下cmd+shift+.
显示隐藏文件,打开.zshrc
或其他环境变量配置文件,如下所示添加环境变量,保存并关闭
export RISV_GCC=/Users/baohan/ErBW_s/Code/Toolchains/xpack-riscv-none-embed-gcc-8.2.0/bin #替换为你的文件所在路径
export RISV_OPENOCD=/Users/baohan/ErBW_s/Code/Toolchains/openocd-arm64/bin #替换为你的文件所在路径
export PATH=$PATH:$RISV_GCC
export PATH=$PATH:$RISV_OPENOCD
3.迁移MRS文件
-
在虚拟机的MRS上对工程文件进行一次成功编译,会发现在工程目录下多了一个
obj
文件夹,其内包含了makefile
和subdir.mk
文件,这是在Clion中配置环境的关键 -
进入CLion中打开该工程文件,随意打开一个
subdir.mk
,此时的C_SRCS
及最下面的可执行.o
文件的文件路径均为虚拟机文件路径,用全局替换将路径替换为Mac下的工程路径注意
/
和\
的区别!Windows下MRS生成的文件路径可能夹杂/
和\
,.o
文件则全为\
,全局替换会比较麻烦。一个可行的方法是在
obj
文件夹内全局将\
替换为/
,随后全局将/
替换为\
(注意区分这里!第二次替换时两个斜杠前面都有一个空格!!)
4.编译烧录
- 在Clion中编辑配置,新建一个
Makefile Target
-
如图选择并填写,将
Working Directory
改为${你的工程路径}/obj
,makefile
选择该文件夹下的makefile
文件make clean
可以用于清理所有编译的文件,运行一次make clean
再运行make all
可达到重新编译的效果 -
再新建一个配置,选择
OpenOCD Download & Run
,如图进行填写Board config file
选择上文openocd/bin
内的wch-riscv.cfg
如果
Debug
失败,可以将Debugger
改上文中xpack-riscv-none-embed-gcc-8.2.0/bin/
内的riscv-none-embed-gdb
-
在
Before launch
内增加运行其他配置,选择前文添加的make all
,这样便会在运行这个配置时自动进行一次编译。 -
然后就可以通过
运行
和调试
进行下载调试了!
5.注意事项
- 在Mac上想要新增文件会比较麻烦,因为需要手动向
subdir.mk
文件增加内容,不过只需要仿照文件内原有的内容扩写即可。 - 配置完成后就尽量不要再去用mrs进行编译了,因为会覆盖
subdir.mk
文件导致需要重新全局替换文件路径。