在 CLion 中配置 ESP_CMake 项目
安装 ESP-IDF
Github地址
espressif/esp-idf
Gitee地址
乐鑫开源/esp-idf
文档地址
ESP-IDF 快速入门
Linux
安装依赖 - 这里使用的系统版本是 Ubuntu20.04
sudo apt-get install git wget flex bison gperf python3 python3-venv python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
下载 ESP-IDF
mkdir -p ~/workspace/esp
cd ~/workspace/esp
git clone --recursive https://github.com/espressif/esp-idf.git
# clone 指定版本
# git clone -b v4.4 --recursive https://github.com/espressif/esp-idf.git esp-idf-v4.4
或者直接到 espressif/esp-idf Tags
下载所需版本之后解压
执行安装脚本
cd ~/workspace/esp/esp-idf-v4.4
export IDF_GITHUB_ASSETS="dl.espressif.com/github_assets"
./install.sh esp32
# 安装所有芯片的支持
# ./install.sh
添加环境变量
./export.sh
这样添加环境变量只会针对当前终端生效
配置 CLion
先从 ESP-IDF 的目录中复制一下 example
cp -r ~/workspace/esp//esp-idf-v4.4/examples/get-started/hello_world .
然后在 CLion
中打开 hellow_world
项目
修改 CMakeLists.txt
这个项目是使用 CMake
来构建的,可以看到根目录下的 CMakeLists.txt
内容如下
cmake_minimum_required(VERSION 3.5)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(hello_world)
由于这里并不方便使用 export.sh
开启虚拟环境,可以直接设置 python
可执行文件的位置,内容修改如下
cmake_minimum_required(VERSION 3.5)
set(PYTHON "$HOME/.espressif/python_env/idf4.4_py3.8_env/bin/python")
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(hello_world)
- 根据自己
IDF
的安装情况,可能需要修改路径
添加 IDF_PATH 环境变量
打开 CLion
文件 -> 设置 -> 构建、执行、部署
打开 CMake
设置添加环境变量
将 ESP_IDF
安装的路径设置为添加为 IDF_PATH
环境变量
修改 gcc、g++路径
这个时候如果 CMake 报错
进入 ESP_IDF
安装路径的 tools/cmake/toolchain-esp32.cmake
的目录下
按照你所使用开发板的型号修改对应的 toolchain-esp32.cmake
,将其中的 xtensa-esp32-elf-gcc
三条 set()
修改如下
set(CMAKE_C_COMPILER $ENV{HOME}/.espressif/tools/xtensa-esp32-elf/esp-2021r2-8.4.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc)
set(CMAKE_CXX_COMPILER $ENV{HOME}/.espressif/tools/xtensa-esp32-elf/esp-2021r2-8.4.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++)
set(CMAKE_ASM_COMPILER $ENV{HOME}/.espressif/tools/xtensa-esp32-elf/esp-2021r2-8.4.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc)
- 路径根据自己的实际路径设置,位置应该都一样
如果配置无误,CMake
将会输出
-- Configuring done
-- Generating done
-- Build files have been written to: ...
使用快捷键 ctrl + F9
即可编译项目
修改编译选项为 flash
直接烧录程序