• MacOS使用clion配置mounriver 工具链


    感谢mounriver开发团队的有求必应 ,终于出版了macos的工具链 ,所以在这里提供一个从windows/Linux的mounriver studio项目迁移到macos的方案。

    一、工具链下载

            下载好工具链后解压,根据自身mac架构选择openocd为arm或是x86,将需要的openocd与

    xpack-riscv-none-embed-gcc放在自己想放的目录下。

    我将两文件放在:

    1. openocd:/Users/rubo/MRS_Project/MRS_Toolchain_MAC_V150/openocd_arm64
    2. xpack-riscv-none-embed-gcc:/Users/rubo/MRS_Project/MRS_Toolchain_MAC_V150/xpack-riscv-none-embed-gcc-8.2.0

    二、环境变量配置

    打开终端,编辑~/.zshrc配置环境变量,我习惯使用gedit,如果没有用vi或是执行brew install gedit可以安装

    sudo gedit ~/.zshrc

    加入环境变量:

    1. export RISV_GCC=/Users/rubo/MRS_Project/MRS_Toolchain_MAC_V150/xpack-riscv-none-embed-gcc-8.2.0/bin
    2. export RISV_OPENOCD=/Users/rubo/MRS_Project/MRS_Toolchain_MAC_V150/openocd_arm64/bin
    3. export PATH=$PATH:$RISV_GCC
    4. export PATH=$PATH:$RISV_OPENOCD

    即根据上文中的目录修改环境目录即可,将目录修改为可执行文件openocd与riscv-none-embed-gcc 所在的目录

    使的环境变量生效:

    source ~/.zshrc    

    三、迁移mounriver studio项目文件

    将整个工程文件拷贝到macos上,其中project/mrs/obj目录下应该会存在一个makefile,正是因为有makefile存在,才可以使我们的项目迁移变得简单。

    在终端中进入project/mrs/obj目录,进行make

    make all

    这时候会发现报错,报错原因是迁移过程中, makefile中还是记录着原有的工程文件目录

    如上图中/home/rubo/mrs_community-workspace是我在linux上的mrs项目工程文件,现在我们需要将它替换为它在macos上的目录

     我的项目工程路径为:

    /Users/rubo/MRS_Project/rubo

    要完成将所有/home/rubo/mrs_community-workspace 替换为 /Users/rubo/MRS_Project,可以在clion中完成。

    在clion中打开项目工程根目录,注意是根目录,此处为rubo

     打开后,按住command+shit+r,全局替换,如图:

    替换完成后,再终端中执行make all应该能编译通过 

    四、在clion中配置编译命令

    点击右上角 “添加配置”

    选择 shall script 

    填写makefile所在目录(也就是项目文件夹的obj目录) 

    脚本文本可以查看makefile,常见的:

    make all为编译

    make clean为清除

     点击右上角运行,应该可以完成编译,但是此时,代码之间并为创建良好的关系,也就是说无法实现代码跳转

     那么可以创建cmakelist:先在左侧随便点开一个.c 文件,根据上方提示,创建cmakelist,一般来说clion会自动识别项目文件中的.c与头文件,所以可以直接确认,创建完成猴猴,就可以实现正常的跳转了。 

     五、补充makefile进行烧录

    在obj/makefile中添加

    1. CFG_PATH := /Users/rubo/MRS_Project/MRS_Toolchain_MAC_V150/openocd_arm64/bin/wch-riscv.cfg
    2. ELF_FILE := NEFU_SeekLight.elf
    3. flash:
    4. openocd -f $(CFG_PATH) -c page_erase -c init -c halt -c "flash write_image $(ELF_FILE) " -c exit
    5. verify:
    6. openocd -f $(CFG_PATH) -c init -c halt -c "verify_image $(ELF_FILE)" -c exit

     修改CFG_PATH与ELF_FILE分别为openocd的bin文件夹中的wch-risv.cfg目录与编译生成的elf目录,用添加编译命令的方法可以添加烧录操作

    常见问题:

    1.目前mounriver studio 官网发布的M1版本openocd 存在问题,若无法使用,可尝试此可用版本:MacOsM1mounriver工具链openocd-C文档类资源-CSDN下载

  • 相关阅读:
    首届828 B2B企业节河北站赋能中小企业数字化转型 打造智慧河北
    PyTorch 深度学习之用PyTorch实现线性回归Linear Regression with PyTorch(四)
    13【JSR303校验】
    Visual Studio 2022版本17.8中的实用功能
    mplus使用注意
    轻量应用服务器vs云服务器:区别在哪?
    小目标检测闲谈
    【Bluetooth蓝牙开发】六、BLE协议之物理层浅析
    Vue----生命周期函数
    硅谷华人天才CEO被开除,是否会有奇迹发生?
  • 原文地址:https://blog.csdn.net/wu58430/article/details/126548417