Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Windows上的CLion中打开ESP-IDF项目作为普通CMake项目_Cmake_Clion_Esp Idf - Fatal编程技术网

在Windows上的CLion中打开ESP-IDF项目作为普通CMake项目

在Windows上的CLion中打开ESP-IDF项目作为普通CMake项目,cmake,clion,esp-idf,Cmake,Clion,Esp Idf,我正试图让Windows进入一种状态,它可以像标准的CMake项目一样打开/处理项目。我知道这是可能的,因为我在Linux上有类似的设置。我将列出我是如何在Linux上实现这一点的,以及我在尝试将同样的想法移植到Windows时遇到的问题 在Linux上 通过从已经由本质上是get_idf初始化的shell的上下文启动CLion,CLion可能会继承idf的CMake文件所需的环境变量。因此,在Linux上实现这一点就像执行脚本一样简单: #/bin/bash . $主页/esp/esp idf

我正试图让Windows进入一种状态,它可以像标准的CMake项目一样打开/处理项目。我知道这是可能的,因为我在Linux上有类似的设置。我将列出我是如何在Linux上实现这一点的,以及我在尝试将同样的想法移植到Windows时遇到的问题

在Linux上 通过从已经由本质上是
get_idf
初始化的shell的上下文启动CLion,CLion可能会继承idf的CMake文件所需的环境变量。因此,在Linux上实现这一点就像执行脚本一样简单:

#/bin/bash
. $主页/esp/esp idf/export.sh
cd~/clion-2020.2.3/bin
//clion.sh
现在,idf项目可以在CLion中作为普通CMake项目打开/编译

在窗户上 然而,在Windows上,如果应用了类似的想法,结果就行不通了。CLion仍然继承调用进程env vars,但这不允许达到预期效果。剧本:

@echo off

cd "C:\Users\someuser\esp-idf\"
call "C:\Users\someuser\.espressif\idf_cmd_init.bat"
"C:\Program Files\JetBrains\CLion 2021.1.1\bin\clion64.exe"
所有相关的环境变量都是继承的(没有全部显示,因为有很多):

然而,尽管idf embedded python是系统/路径或其他环境变量中唯一的python实例,但它仍然抱怨遗留python解释器或无法找到需求:

更令人困惑的是,idf环境在CLion的集成终端上完全工作:

有谁知道这种差异的技术原因是什么,我如何解决它

为什么不用PlatformIO呢? 在我看来,PlatformIO使得利用esp_idf的某些功能变得过于复杂。而且,我也无法让它在Windows上与CLion一起工作。最后,我希望至少可以选择在Windows上对CLion使用普通idf