前言:为什么用CLion做开发?
网上看了好多关于适配Clion的教程,包括稚晖君那篇适配STM32CubeMX到Cion的教程也是。总的来说就两个字,好用!及其流畅的编码体验,尤其是自动补全,这是Jet家一贯的优势,用过Jet家的补全相信我你就回不去了。
那vscode不香吗? 香!但是“vscode确实香, 只要你不用它写C/C++”
下面的教程及其简单,为了让大家理解每一步都准备了图,别看教程感觉好长但大部分都是图片
为了保证对于Clion不同版本兼容,所以文章较长,强烈建议看本教程时先看一下目录,再决定看哪一章节
CLion新版设置方式
教程平台介绍(新版):
- CLion 2022.3.1 并且开启了新版UI
- ESP-IDF 5.0
- MinGw 11.20 x64 from Qt6.4.0(Option)
1. 安装ESP-IDF 5.0
下载链接https://dl.espressif.com/dl/esp-idf/ 在线版离线版根据网络情况自行选择,这里个人选择在线版
1.1 应用修复
如果需要应用修复,则点击修复
1.2 选择路径
为了方便查找,这里将工具和IDF存放一起
个人不需要这四个,比较占地方,卸载的时候还不自动删除,强迫症,,
配置好后,后续等待下载安装即可
2. 配置CLion
2.1 配置环境变量
修改自动配置文件idf_cmd_init.bat
编辑,首行添加
:: set IDF_PATH
set IDF_PATH=D:\ESP-IDF\IDF_5
打开空项目,关闭自动弹出的项目配置指导
2.2 配置工具链
打开设置,新建工具链
选择刚才编辑的文件
注意,IDF5.0的mingw版本应当大于10.0,这里我Qt有11.20的,所以直接用Qt的
Clion自带的bundled为8.0,如果需要可以点击旁边的Download下载新版本
2.3 修改CMake
选择刚才配置好的工具链
设置自己的MCU型号,以及上传波特率
点击"OK"自动配置CMake,如果没有自动配置,选择重设CMake即可
没有报错即为正常
2.4 测试编译上传
设置为flash,连接ESP32S3,烧录测试
测试上传正常
3. 配置menuconfig
新建一个Shell Script即可,在Script text 添加如下内容,路径修改为自己的
D:\ESP-IDF\IDF_5\export.ps1; idf.py menuconfig
确认好之后运行即可,上下左右键可做菜单切换
4. 参考
基于CLion和ESF-IDF搭建ESP32-C3开发环境(上)_哔哩哔哩_bilibili
CLion旧版设置方式
1. ESP-IDF开发环境准备
开发环境准备这里有两种方式:
- 直接使用vscode插件ESP-IDF下载安装,然后转到esp-idf的安装目录执行install.ps1即可
- 使用官方给的安装工具进行安装,防止篇目过长这里不再赘述
2. 环境变量配置(三选一)
文章中截图有主题不匹配的情况,因为文章部分是之后更新,而且Clion迎来了主题更新,不影响阅读。
2.1 全局环境配置 + CmakeLists.txt内的环境配置
这个的配置已经有人写的非常详细了,这里直接贴出博客,写的非常棒!
ESP32之 ESP-IDF + Clion 开发环境搭建(一)—— Windows版
这里我自己照着这个配置下来的话menucofig和flash是没有办法使用的,所以对其进行了补充和部分修改,,第二种方法就是结合了这里面这篇的方法和自己补充的方法实现flash和"伪"menuconfig.为什么是"伪",往下看慢慢道来
2.2 Clion内部环境变量配置 + 全局变量环境配置(个人推荐)
第一种方法我们提到,我对上面的方法进行了补充和修改,个人感觉修改内容还挺多的,懒得看上面的直接跟着这个来吧,但是要是想要在其他IDE使用ESP-IDF的话一定要看看上面那个博客,写的很棒!
举一反三,其他IDE如果支持直接软件内部配置环境变量的话也可以这么直接干
2.2.1 系统环境变量配置:
这里在系统变量里添加一栏IDF_PATH
然后填入你的安装ESP-IDF时候的安装路径。(这里是windows系统的环境变量配置,不是Clion的界面)
2.2.2 创建一个工程
- 打开Powershell,然后使用
cd
命令到上图所示IDF_PATH
路径下,执行:
.\export.ps1
如果你的环境是Powershell,那么必须执行export.ps1不能执行.bat,否则会有PATH写不进去的情况
出现如下相似语句则表示成功
- 然后
cd
到你自己的工程目录(自己随便选),执行idf.py create-project 你的工程名
,比如我的就是
idf.py create-project TestenvByTxwh
2.2.3 使用CLion配置你的工程
打开刚才创建的工程,如果弹出这个默认即可。
预料到的报错,提示没有找到python对应路径。
到刚才创建工程的PowerShell窗口下执行(一定要在这个窗口,因为只有这个窗口的环境变量被拓展了,因为前面执行了export.ps1
)
$env:PATH
我们把所有的PATH复制下来,然后找到进入CLion的settings,设置Environment,然后把刚才复制的路径写到Path中(在用户环境变量),输入完之后点击确认
新建一个叫Path的变量,然后把刚才复制的填进去
确认之后再打开,你会发现Clion进行了自动整合。
点击应用之后,CLion会自动执行重构CMake, 出现这样的说明就没啥问题了哈
让我们点击绿色箭头编译一下,看起来没啥问题
头文件引用,补全都没有问题
2.2.4 下载配置
直接点击右上角切换Application
点击绿色三角按钮执行,弹出下面窗口
选择自己的工程,然后应用。运行之后如果存在多个COM口会自动遍历,符合条件则刷写
这里要求我们指定端口和上传波特率
打开Clion的环境配置页面,和上面加入PATH那个页面一样,添加相应环境变量即可
这次不会提示并且直接连接我设置的COM口了,以后执行建议直接运行flash就好了,flash运行之前可以看到会进行一遍编译
2.2.5 menuconfig配置
刚才选择flash界面就有menuConfig选项,但是由于CLion无法重定向的原因,没法执行
所以这里我自己使用了另一种方法来解决这个问题。
选择Edit configuration
然后添加Shell Script
,再进行配置
在第四个里面添加如下代码:
.$env:IDF_PATH\export.ps1; idf.py menuconfig
这里ESC和CLion快捷键冲突,设置好直接保存或者Q退出即可
删除一些个人不需要的配置
2.3 Clion内部完全的环境变量配置
这种方法每次新建一个工程就得进行一次配置,但是同样的修改ESP-IDF本身的文件也最少
这个和[Clion内部环境变量配置 + 全局变量环境配置(个人推荐)](#2.Clion内部环境变量配置 + 全局变量环境配置(个人推荐))没太大区别,无非就是把系统环境IDF_PATH
放在CLion里面配置,这样系统变量就不用配置了
其他步骤和第二种完全一样,然后就可以开始享受了!
3. 参考
ESP32之 ESP-IDF + Clion 开发环境搭建(一)—— Windows版_Augtons正(单片机)的博客-CSDN博客_clion esp32