我以一个简单的“闪烁”示例开始了我的项目,并将其用作编写代码的模板。
此示例仅使用了一个源文件 blink.c
。
最终,我想要一个使用多源文件的项目,但不知道如何配置 CMakeLists.txt
以编译项目。
我的 CMakeLists.txt
是:
cmake_minimum_required(VERSION 3.5)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(blink)
我想添加例如 init.c
。
我尝试了不同的方法,但都没有成功。
idf_component_register() / register_component() 都不适合我。
知道如何正确配置项目吗?
答案 0 :(得分:1)
对了,ESP IDF 中的 CMake 项目层次结构有点棘手。您正在查看错误的 CMakeLists.txt
文件。而不是根目录中的那个,打开blink/main/CMakeLists.txt
中的那个。该文件列出了“主要”组件的源文件,这是您要使用的。它看起来像这样:
idf_component_register(SRCS "blink.c" "init.c"
INCLUDE_DIRS ".")
确保您的 init.c
文件与此 CMakeLists.txt
和 blink.c
位于同一目录中。
我还建议您查看 Espressif Build System documentation,它非常有用。