Wie man ESP-IDF fatalen Fehler behebt: cJSON.h: No such file or directory

Problem

Beim Erstellen eines ESP-IDF-Projekts können Sie den folgenden Fehler antreffen:

cjson_fatal_error.txt
/home/user/MyProject/main/main.cpp:10:10: fatal error: cJSON.h: No such file or directory
   10 | #include <cJSON.h>
      |          ^~~~~~~~~
compilation terminated.

Lösung

Sie müssen sicherstellen, dass die json-Komponente in Ihrem Projekt enthalten ist. Dies kann durch Modifizieren Ihrer main/CMakeLists.txt-Datei erfolgen, um die json-Komponente als Abhängigkeit einzuschließen.

Sie können dies tun, indem Sie die Zeile REQUIRES json in Ihrer idf_component_register-Funktion hinzufügen. So modifizieren Sie Ihre main/CMakeLists.txt-Datei:

idf_component_register_json.cmake
idf_component_register(
  SRCS "main.cpp"
  INCLUDE_DIRS "..\include"
  REQUIRES json
)

Check out similar posts by category: ESP-IDF, ESP32