乐鑫技术交流
直播中

向日葵的花季

8年用户 1201经验值
擅长:电源/新能源
私信 关注
[问答]

ESP-IOT-SOLUTION编译时报错怎么处理?

我使用 ESP-IOT-SOLUtiON 时遇到了一个问题。编译时报错WARNING  Can't detect IOT_SOLUTION_PATH in your environment...
按照官网的描述 我尝试添加环境变量 set IOT_SOLUTION_PATH=C:espesp-iot-solution (我修改了路径,把IOT包放在了eps-idf目录下)
命令运行后没有任何反应 ESP-IDF生成的控制台 和 WIN10自带的控制台 我都试过了 没有用
在运行这条命令后 使用 set set IOT_SOLUTION_PATH 查询环境变量 并不能查到

最后手动添加了路径
%IOT_SOLUTION_PATH% 和 IOT_SOLUTION_PATH

大家不要笑,从某32转过来的,没有弄过ESP这种环境,没结果就乱弄。
在VSCODE里工程根目录的CMakeList文件(并不是main函数同级的拿一个list)里有这样的描述,我复制的例子

cmake_minimum_required(VERSION 3.5)

#If IOT_SOLUTION_PATH is not defined, use relative path as default value
if(NOT DEFINED ENV{IOT_SOLUTION_PATH})
    get_filename_component(IOT_SOLUTION_PATH "${CMAKE_SOURCE_DIR}/../../../.." ABSOLUTE)
    set(ENV{IOT_SOLUTION_PATH} ${IOT_SOLUTION_PATH})
    message(WARNING "Can't detect IOT_SOLUTION_PATH in your environment, we infer it is $ENV{IOT_SOLUTION_PATH}")
endif()

# This example uses an extra component for common functions such as Wi-Fi and Ethernet connection.
set(EXTRA_COMPONENT_DIRS
                        $ENV{IOT_SOLUTION_PATH}/components/usb/tinyusb
                        $ENV{IOT_SOLUTION_PATH}/examples/common_components/boards
                        $ENV{IOT_SOLUTION_PATH}/components/bus
                        $ENV{IOT_SOLUTION_PATH}/components/button
                        $ENV{IOT_SOLUTION_PATH}/examples/common_components/boards/esp32-devkitc-v4)

include($ENV{IDF_PATH}/tools/cmake/project.cmake)
include($ENV{IOT_SOLUTION_PATH}/component.cmake)
project(usb_wireless_disk)

我想问题就出现在 if(NOT DEFINED ENV{IOT_SOLUTION_PATH})上,那么请问我该怎么做?多谢!
                                                                                                                                                                                                                        
               

回帖(1)

李华

2024-6-27 17:06:41
这里是一些建议来解决这个问题:

1. 确保您的环境变量设置正确:
   - 首先,打开命令提示符(cmd)或 PowerShell。
   - 使用以下命令设置环境变量(请根据您的实际路径进行修改):
     ```
     set IOT_SOLUTION_PATH=C:espesp-iot-solution
     ```

2. 确保环境变量已正确设置:
   - 在同一个命令提示符窗口中,使用以下命令检查环境变量是否已正确设置:
     ```
     echo %IOT_SOLUTION_PATH%
     ```
   - 如果输出结果与您设置的路径相符,说明环境变量设置成功。

3. 重新打开命令提示符:
   - 如果您在设置环境变量后没有看到任何反应,尝试关闭当前的命令提示符窗口,然后重新打开一个新的命令提示符窗口。这将确保新的环境变量设置生效。

4. 检查 ESP-IDF 和 ESP-IOT-SOLUTION 的安装:
   - 确保您已正确安装了 ESP-IDF 和 ESP-IOT-SOLUTION。请按照官方文档进行安装和配置。

5. 清理并重新编译项目:
   - 在命令提示符中,导航到您的项目目录。
   - 运行以下命令清理项目:
     ```
     idf.py fullclean
     ```
   - 然后重新编译项目:
     ```
     idf.py build
     ```


举报

更多回帖

发帖
×
20
完善资料,
赚取积分