乐鑫技术交流
直播中

陈敏

7年用户 1282经验值
私信 关注
[问答]

运行usb/device /usb_webcam报错no versions of leeebo/tinyusb_src match >=0.15.0~6的原因?

我从github中拉取了 ESP IoT Solution 项目。 运行了esp-iot-solutionexamplesusbdeviceusb_webcam。使用的esp-idf运行。 在运行中 我调用idf.py set-target esp32s3 命令后会报错。错误代码如下 :CMake Error at D:/wqrj/Espressif/frameworks/esp-idf-v5.2.1/tools/cmake/build.cmake:544 (message):
  ERROR: Because no versions of usb_device_uvc match >=0.0.0,<0.1.0 ||
  >0.1.0,<1.0.0

   and usb_device_uvc (0.1.0) depends on leeebo/tinyusb_src (>=0.15.0~6), usb_device_uvc (>=0.0.0,<1.0.0) requires leeebo/tinyusb_src (>=0.15.0~6).

  So, because no versions of leeebo/tinyusb_src match >=0.15.0~6

   and project depends on usb_device_uvc (0.*), version solving failed.

Call Stack (most recent call first):
  D:/wqrj/Espressif/frameworks/esp-idf-v5.2.1/tools/cmake/project.cmake:605 (idf_build_process)
  CMakeLists.txt:25 (project)
                                                                                                                                                            

回帖(1)

龙献益

2024-6-27 16:50:21
让我们逐步分析并解决这个问题。

1. 首先,检查您的 `esp-idf` 版本。您提到的错误信息中包含了 `esp-idf-v5.2.1`,但这个版本可能与您的项目不兼容。建议您升级到最新版本的 `esp-idf`。可以通过以下命令升级:

```
git clone https://github.com/espressif/esp-idf.git
cd esp-idf
git pull
```

2. 接下来,检查您的 `usb_device_uvc` 库的版本。错误信息中提到了版本范围 `>=0.0.0,<0.1.0 || >0.1.0,<1.0.0`,但实际使用的版本是 `0.1.0`。这可能是导致错误的原因。您可以尝试将 `usb_device_uvc` 库的版本更改为满足条件的版本,例如 `0.0.9`。在项目的 `CMakeLists.txt` 文件中,找到以下行:

```
set(usb_device_uvc_COMPONENT_SRCDIRS "path/to/usb_device_uvc")
```

将其更改为:

```
set(usb_device_uvc_COMPONENT_SRCDIRS "path/to/usb_device_uvc@0.0.9")
```

3. 检查 `leeebo/tinyusb_src` 库的版本。错误信息中提到了 `>=0.15.0~6` 的版本要求。您需要确保使用的 `tinyusb` 版本满足这个要求。在项目的 `CMakeLists.txt` 文件中,找到以下行:

```
set(tinyusb_COMPONENT_SRCDIRS "path/to/leeebo/tinyusb_src")
```

将其更改为:

```
set(tinyusb_COMPONENT_SRCDIRS "path/to/leeebo/tinyusb_src@0.15.0~6")
```

4. 保存所有更改后,重新运行 `idf.py set-target esp32s3` 命令。如果问题仍然存在,请检查其他依赖库的版本是否与项目兼容。


举报

更多回帖

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