Unable to find nrf related header files when creating a static library

HI ALL,

I want to create a static library in the application layer, but this library will contain nrf related header files, which will cause cmake to not compile properly

main.c  CMakeLists.txt:

lib CMakeLists.txt:

Is there any way to help it find this header file? We are using version v2.8.0, vscode,cmake

Parents
  • Hi,

     

    Can you share the full compiler output?

     

    Kind regards,

    Håkon


  • -- Configuring done
    -- Generating done
    -- Build files have been written to: E:/ncs_demo/2.8.0/peripheral_uart_5/build
    -- west build: building application
    [1/20] Creating directories for 'peripheral_uart_5'
    [2/20] Creating directories for 'mcuboot'
    [3/20] No download step for 'peripheral_uart_5'
    [4/20] No download step for 'mcuboot'
    [5/20] No update step for 'peripheral_uart_5'
    [6/20] No update step for 'mcuboot'
    [7/20] No patch step for 'peripheral_uart_5'
    [8/20] No patch step for 'mcuboot'
    [9/20] No configure step for 'peripheral_uart_5'
    [9/20] Performing build step for 'peripheral_uart_5'
    [0/1] Re-running CMake...
    -- Application: E:/ncs_demo/2.8.0/peripheral_uart_5
    -- CMake version: 3.21.0
    -- Cache files will be written to: E:/ncs/2.8.0/toBeDeleted/zephyr/.cache
    -- Zephyr version: 3.7.99 (E:/ncs/2.8.0/toBeDeleted/zephyr)
    -- Found west (found suitable version "1.2.0", minimum required is "0.14.0")
    Loading Zephyr default modules (Zephyr base (cached)).
    -- Board: nrf54l15dk, qualifiers: nrf54l15/cpuapp
    -- Found host-tools: zephyr 0.16.8 (C:/ncs/toolchains/2d382dcd92/opt/zephyr-sdk)
    -- Found toolchain: zephyr 0.16.8 (C:/ncs/toolchains/2d382dcd92/opt/zephyr-sdk)
    -- Found BOARD.dts: E:/ncs/2.8.0/toBeDeleted/zephyr/boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l15_cpuapp.dts
    -- Found devicetree overlay: E:/ncs_demo/2.8.0/peripheral_uart_5/boards/nrf54l15dk_nrf54l15_cpuapp.overlay
    unit address and first address in 'reg' (0x5004c000) don't match for /soc/peripheral@50000000/vpr@4c000/mailbox@1
    -- Generated zephyr.dts: E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/zephyr.dts
    -- Generated devicetree_generated.h: E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/include/generated/zephyr/devicetree_generated.h
    -- Including generated dts.cmake file: E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/dts.cmake
    Parsing E:/ncs_demo/2.8.0/peripheral_uart_5/Kconfig
    Loaded configuration 'E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/.config'
    Merged configuration 'E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/.config.sysbuild'
    No change to configuration in 'E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/.config'
    No change to Kconfig header in 'E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/include/generated/zephyr/autoconf.h'
    CMake Warning at E:/ncs/2.8.0/toBeDeleted/nrf/samples/common/mcumgr_bt_ota_dfu/CMakeLists.txt:14 (message):
    MCUmgr Bluetooth OTA DFU: suboptimal configuration of Bluetooth Controller
    buffers. Consider using optimal values defined in the
    E:/ncs/2.8.0/toBeDeleted/nrf/samples/common/mcumgr_bt_ota_dfu/Kconfig file
    for CONFIG_BT_BUF_ACL_TX_SIZE, CONFIG_BT_BUF_ACL_RX_SIZE and
    CONFIG_BT_CTLR_DATA_LENGTH_MAX options


    CMake Warning at E:/ncs/2.8.0/toBeDeleted/nrf/samples/common/mcumgr_bt_ota_dfu/CMakeLists.txt:27 (message):
    MCUmgr Bluetooth OTA DFU: suboptimal configuration of Bluetooth Host
    buffers. Consider using optimal values defined in the
    E:/ncs/2.8.0/toBeDeleted/nrf/samples/common/mcumgr_bt_ota_dfu/Kconfig file
    for CONFIG_BT_BUF_ACL_TX_SIZE, CONFIG_BT_BUF_ACL_RX_SIZE and
    CONFIG_BT_L2CAP_TX_MTU options


    =========== Generating psa_crypto_config ===============
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_SPM: False
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_C: True
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER: False
    Backup: CONFIG_MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT: False
    Backup: CONFIG_MBEDTLS_THREADING: False
    Backup: CONFIG_MBEDTLS_THREADING_ALT: True
    =========== Checkpoint: backup ===============
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_SPM: False
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_C: True
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER: False
    Restore: CONFIG_MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT: False
    Restore: CONFIG_MBEDTLS_THREADING: False
    Restore: CONFIG_MBEDTLS_THREADING_ALT: True
    =========== End psa_crypto_config ===============
    =========== Generating psa_crypto_library_config ===============
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_C: True
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER: False
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_SPM: False
    Backup: CONFIG_MBEDTLS_USE_PSA_CRYPTO: True
    Backup: CONFIG_MBEDTLS_PLATFORM_PRINTF_ALT: False
    Backup: CONFIG_MBEDTLS_THREADING: False
    Backup: CONFIG_MBEDTLS_THREADING_ALT: True
    =========== Checkpoint: backup ===============
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_C: True
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER: False
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_SPM: False
    Restore: CONFIG_MBEDTLS_USE_PSA_CRYPTO: True
    Restore: CONFIG_MBEDTLS_PLATFORM_PRINTF_ALT: False
    Restore: CONFIG_MBEDTLS_THREADING: False
    Restore: CONFIG_MBEDTLS_THREADING_ALT: True
    =========== End psa_crypto_library_config ===============
    -- Including signing script: E:/ncs/2.8.0/toBeDeleted/nrf/cmake/sysbuild/image_signing.cmake
    CMake Warning at E:/ncs/2.8.0/toBeDeleted/zephyr/CMakeLists.txt:2134 (message):
    __ASSERT() statements are globally ENABLED


    Loading Zephyr default modules (Zephyr base (cached)).
    -- Configuring done
    -- Generating done
    -- Build files have been written to: E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5
    [1/372] Generating include/generated/zephyr/app_version.h
    [2/372] Building C object src/lib/CMakeFiles/mylib.dir/test.c.obj
    FAILED: src/lib/CMakeFiles/mylib.dir/test.c.obj
    C:\ncs\toolchains\2d382dcd92\opt\zephyr-sdk\arm-zephyr-eabi\bin\arm-zephyr-eabi-gcc.exe -IE:/ncs_demo/2.8.0/peripheral_uart_5/src/lib -Os -DNDEBUG -MD -MT src/lib/CMakeFiles/mylib.dir/test.c.obj -MF src\lib\CMakeFiles\mylib.dir\test.c.obj.d -o src/lib/CMakeFiles/mylib.dir/test.c.obj -c E:/ncs_demo/2.8.0/peripheral_uart_5/src/lib/test.c
    In file included from E:/ncs_demo/2.8.0/peripheral_uart_5/src/lib/test.c:1:
    E:/ncs_demo/2.8.0/peripheral_uart_5/src/lib/board-config.h:5:10: fatal error: hal/nrf_gpio.h: No such file or directory
    5 | #include <hal/nrf_gpio.h>
    | ^~~~~~~~~~~~~~~~
    compilation terminated.
    [3/372] Generating ../../zephyr/include/generated/zephyr_commit.h
    [4/372] Generating ../../zephyr/include/generated/ncs_commit.h
    [5/372] Generating ../../zephyr/include/generated/ncs_version.h
    [6/372] Generating ../../zephyr/include/generated/app_commit.h
    [7/372] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json
    ninja: build stopped: subcommand failed.
    [10/20] No configure step for 'mcuboot'
    FAILED: _sysbuild/sysbuild/images/peripheral_uart_5-prefix/src/peripheral_uart_5-stamp/peripheral_uart_5-build E:/ncs_demo/2.8.0/peripheral_uart_5/build/_sysbuild/sysbuild/images/peripheral_uart_5-prefix/src/peripheral_uart_5-stamp/peripheral_uart_5-build
    cmd.exe /C "cd /D E:\ncs_demo\2.8.0\peripheral_uart_5\build\peripheral_uart_5 && C:\ncs\toolchains\2d382dcd92\opt\bin\cmake.exe --build ."
    ninja: build stopped: subcommand failed.
    FATAL ERROR: command exited with status 1: 'C:\ncs\toolchains\2d382dcd92\opt\bin\cmake.EXE' --build E:/ncs_demo/2.8.0/peripheral_uart_5/build

    * The terminal process terminated with exit code: 1.
    * Terminal will be reused by tasks, press any key to close it.

Reply

  • -- Configuring done
    -- Generating done
    -- Build files have been written to: E:/ncs_demo/2.8.0/peripheral_uart_5/build
    -- west build: building application
    [1/20] Creating directories for 'peripheral_uart_5'
    [2/20] Creating directories for 'mcuboot'
    [3/20] No download step for 'peripheral_uart_5'
    [4/20] No download step for 'mcuboot'
    [5/20] No update step for 'peripheral_uart_5'
    [6/20] No update step for 'mcuboot'
    [7/20] No patch step for 'peripheral_uart_5'
    [8/20] No patch step for 'mcuboot'
    [9/20] No configure step for 'peripheral_uart_5'
    [9/20] Performing build step for 'peripheral_uart_5'
    [0/1] Re-running CMake...
    -- Application: E:/ncs_demo/2.8.0/peripheral_uart_5
    -- CMake version: 3.21.0
    -- Cache files will be written to: E:/ncs/2.8.0/toBeDeleted/zephyr/.cache
    -- Zephyr version: 3.7.99 (E:/ncs/2.8.0/toBeDeleted/zephyr)
    -- Found west (found suitable version "1.2.0", minimum required is "0.14.0")
    Loading Zephyr default modules (Zephyr base (cached)).
    -- Board: nrf54l15dk, qualifiers: nrf54l15/cpuapp
    -- Found host-tools: zephyr 0.16.8 (C:/ncs/toolchains/2d382dcd92/opt/zephyr-sdk)
    -- Found toolchain: zephyr 0.16.8 (C:/ncs/toolchains/2d382dcd92/opt/zephyr-sdk)
    -- Found BOARD.dts: E:/ncs/2.8.0/toBeDeleted/zephyr/boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l15_cpuapp.dts
    -- Found devicetree overlay: E:/ncs_demo/2.8.0/peripheral_uart_5/boards/nrf54l15dk_nrf54l15_cpuapp.overlay
    unit address and first address in 'reg' (0x5004c000) don't match for /soc/peripheral@50000000/vpr@4c000/mailbox@1
    -- Generated zephyr.dts: E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/zephyr.dts
    -- Generated devicetree_generated.h: E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/include/generated/zephyr/devicetree_generated.h
    -- Including generated dts.cmake file: E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/dts.cmake
    Parsing E:/ncs_demo/2.8.0/peripheral_uart_5/Kconfig
    Loaded configuration 'E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/.config'
    Merged configuration 'E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/.config.sysbuild'
    No change to configuration in 'E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/.config'
    No change to Kconfig header in 'E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5/zephyr/include/generated/zephyr/autoconf.h'
    CMake Warning at E:/ncs/2.8.0/toBeDeleted/nrf/samples/common/mcumgr_bt_ota_dfu/CMakeLists.txt:14 (message):
    MCUmgr Bluetooth OTA DFU: suboptimal configuration of Bluetooth Controller
    buffers. Consider using optimal values defined in the
    E:/ncs/2.8.0/toBeDeleted/nrf/samples/common/mcumgr_bt_ota_dfu/Kconfig file
    for CONFIG_BT_BUF_ACL_TX_SIZE, CONFIG_BT_BUF_ACL_RX_SIZE and
    CONFIG_BT_CTLR_DATA_LENGTH_MAX options


    CMake Warning at E:/ncs/2.8.0/toBeDeleted/nrf/samples/common/mcumgr_bt_ota_dfu/CMakeLists.txt:27 (message):
    MCUmgr Bluetooth OTA DFU: suboptimal configuration of Bluetooth Host
    buffers. Consider using optimal values defined in the
    E:/ncs/2.8.0/toBeDeleted/nrf/samples/common/mcumgr_bt_ota_dfu/Kconfig file
    for CONFIG_BT_BUF_ACL_TX_SIZE, CONFIG_BT_BUF_ACL_RX_SIZE and
    CONFIG_BT_L2CAP_TX_MTU options


    =========== Generating psa_crypto_config ===============
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_SPM: False
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_C: True
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER: False
    Backup: CONFIG_MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT: False
    Backup: CONFIG_MBEDTLS_THREADING: False
    Backup: CONFIG_MBEDTLS_THREADING_ALT: True
    =========== Checkpoint: backup ===============
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_SPM: False
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_C: True
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER: False
    Restore: CONFIG_MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT: False
    Restore: CONFIG_MBEDTLS_THREADING: False
    Restore: CONFIG_MBEDTLS_THREADING_ALT: True
    =========== End psa_crypto_config ===============
    =========== Generating psa_crypto_library_config ===============
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_C: True
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER: False
    Backup: CONFIG_MBEDTLS_PSA_CRYPTO_SPM: False
    Backup: CONFIG_MBEDTLS_USE_PSA_CRYPTO: True
    Backup: CONFIG_MBEDTLS_PLATFORM_PRINTF_ALT: False
    Backup: CONFIG_MBEDTLS_THREADING: False
    Backup: CONFIG_MBEDTLS_THREADING_ALT: True
    =========== Checkpoint: backup ===============
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_C: True
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_KEY_ID_ENCODES_OWNER: False
    Restore: CONFIG_MBEDTLS_PSA_CRYPTO_SPM: False
    Restore: CONFIG_MBEDTLS_USE_PSA_CRYPTO: True
    Restore: CONFIG_MBEDTLS_PLATFORM_PRINTF_ALT: False
    Restore: CONFIG_MBEDTLS_THREADING: False
    Restore: CONFIG_MBEDTLS_THREADING_ALT: True
    =========== End psa_crypto_library_config ===============
    -- Including signing script: E:/ncs/2.8.0/toBeDeleted/nrf/cmake/sysbuild/image_signing.cmake
    CMake Warning at E:/ncs/2.8.0/toBeDeleted/zephyr/CMakeLists.txt:2134 (message):
    __ASSERT() statements are globally ENABLED


    Loading Zephyr default modules (Zephyr base (cached)).
    -- Configuring done
    -- Generating done
    -- Build files have been written to: E:/ncs_demo/2.8.0/peripheral_uart_5/build/peripheral_uart_5
    [1/372] Generating include/generated/zephyr/app_version.h
    [2/372] Building C object src/lib/CMakeFiles/mylib.dir/test.c.obj
    FAILED: src/lib/CMakeFiles/mylib.dir/test.c.obj
    C:\ncs\toolchains\2d382dcd92\opt\zephyr-sdk\arm-zephyr-eabi\bin\arm-zephyr-eabi-gcc.exe -IE:/ncs_demo/2.8.0/peripheral_uart_5/src/lib -Os -DNDEBUG -MD -MT src/lib/CMakeFiles/mylib.dir/test.c.obj -MF src\lib\CMakeFiles\mylib.dir\test.c.obj.d -o src/lib/CMakeFiles/mylib.dir/test.c.obj -c E:/ncs_demo/2.8.0/peripheral_uart_5/src/lib/test.c
    In file included from E:/ncs_demo/2.8.0/peripheral_uart_5/src/lib/test.c:1:
    E:/ncs_demo/2.8.0/peripheral_uart_5/src/lib/board-config.h:5:10: fatal error: hal/nrf_gpio.h: No such file or directory
    5 | #include <hal/nrf_gpio.h>
    | ^~~~~~~~~~~~~~~~
    compilation terminated.
    [3/372] Generating ../../zephyr/include/generated/zephyr_commit.h
    [4/372] Generating ../../zephyr/include/generated/ncs_commit.h
    [5/372] Generating ../../zephyr/include/generated/ncs_version.h
    [6/372] Generating ../../zephyr/include/generated/app_commit.h
    [7/372] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json
    ninja: build stopped: subcommand failed.
    [10/20] No configure step for 'mcuboot'
    FAILED: _sysbuild/sysbuild/images/peripheral_uart_5-prefix/src/peripheral_uart_5-stamp/peripheral_uart_5-build E:/ncs_demo/2.8.0/peripheral_uart_5/build/_sysbuild/sysbuild/images/peripheral_uart_5-prefix/src/peripheral_uart_5-stamp/peripheral_uart_5-build
    cmd.exe /C "cd /D E:\ncs_demo\2.8.0\peripheral_uart_5\build\peripheral_uart_5 && C:\ncs\toolchains\2d382dcd92\opt\bin\cmake.exe --build ."
    ninja: build stopped: subcommand failed.
    FATAL ERROR: command exited with status 1: 'C:\ncs\toolchains\2d382dcd92\opt\bin\cmake.EXE' --build E:/ncs_demo/2.8.0/peripheral_uart_5/build

    * The terminal process terminated with exit code: 1.
    * Terminal will be reused by tasks, press any key to close it.

Children
Related