乐鑫技术交流
直播中

蔡鼎瑾

8年用户 1058经验值
私信 关注
[问答]

Freertos不兼容,已经配置添加了V8.00版本,还是不兼容,为什么?

Building C object esp-idf/wifi_provisioning/CMakeFiles/__idf_wifi_provisioning.dir/src/manager.c.obj
ninja: build stopped: subcommand failed.
HINT: You are maybe using pre FreeRTOS V8.0.0 data types. The backward compatibility of such data types is no longer enabled by default. Please turn on CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY explicitly to use such data types.
ninja failed with exit code 1, output of the command is in the /home/yuan/esp/esp-adf/examples/get-started/WiFi_Walkie/build/log/idf_py_stderr_output_2122496 and /home/yuan/esp/esp-adf/examples/get-started/WiFi_Walkie/build/log/idf_py_stdout_output_2122496
Freertos不兼容,已经配置添加了V8.00版本,还是不兼容,目前用的idf5.2adf最新
                                                                                                                                                                  

回帖(1)

蒲泛粟

2024-7-24 17:37:28
从您提供的错误信息来看,您在编译 FreeRTOS 时遇到了兼容性问题。这个问题通常是因为您的代码使用了旧版本的 FreeRTOS 数据类型,而您的 FreeRTOS 版本已经是 8.0.0 或更高版本。

为了解决这个问题,您需要按照错误提示中的建议,启用 FreeRTOS 的向后兼容性。以下是解决这个问题的步骤:

1. 打开您的项目配置文件 `sdkconfig`。这个文件通常位于项目的根目录下。

2. 搜索 `CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY` 选项。如果没有找到,您需要手动添加这个选项。

3. 将 `CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY` 设置为 `y`(启用)。

   ```
   CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY=y
   ```

4. 保存并关闭 `sdkconfig` 文件。

5. 重新运行 CMake 构建系统,以重新生成构建文件。

6. 再次编译您的项目。这应该可以解决兼容性问题。

如果您仍然遇到问题,请检查您的代码,确保没有使用旧版本的 FreeRTOS 数据类型。您可能需要将这些数据类型替换为新版本的数据类型,或者根据需要进行适当的转换。

此外,如果您的项目中使用了第三方库或组件,也请确保它们与 FreeRTOS 8.0.0 兼容。如果这些库或组件不兼容,您可能需要寻找替代方案或等待它们更新。
举报

更多回帖

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