General CMake issues

See here.

driver/gpio.h: No such file or directory

CMakeLists.txt needs “driver” added to REQUIRES, e.g.:

idf_component_register(SRC_DIRS "."
    REQUIRES driver
    INCLUDE_DIRS "."
    )

ninja: build stopped: subcommand failed

Often this is caused by spaces in the path of the project or the path being too long.