Error when trying to build micro-ROS/micro_ros_zephyr_module on top of Zephyr RTOS docker container (clean environment)
Environment:
- Hardware description: the problem is in the micro_ros_zephyr_module installation step. No hardware used at this step yet.
- RTOS: Zephyr
- Installation type: trying to install micro_ros_zephyr_module on top of the docker container: https://github.com/zephyrproject-rtos/docker-image:main
- Version or commit hash: cloned latest repo for the module: git clone https://github.com/micro-ROS/micro_ros_zephyr_module
Steps to reproduce the issue
- docker run -ti --name zephyr_main -v .:/workdir -p 5900:5900 docker.io/zephyrprojectrtos/zephyr-build:main then in the container:
- west init
- git clone https://github.com/micro-ROS/micro_ros_zephyr_module
- pip3 install catkin_pkg lark-parser empy colcon-common-extensions
- west build -b arduino_due micro_ros_zephyr_module
Expected behavior
module build without errors
Actual behavior
-- west build: generating a build system Loading Zephyr default modules (Zephyr base). -- Application: /workdir/micro_ros_zephyr_module -- CMake version: 3.22.1 -- Found Python3: /usr/bin/python3 (found suitable version "3.10.12", minimum required is "3.8") found components: Interpreter -- Cache files will be written to: /home/user/.cache/zephyr -- Zephyr version: 3.7.0-rc1 (/workdir/zephyr) -- Found west (found suitable version "1.2.0", minimum required is "0.14.0") -- Board: arduino_due, qualifiers: sam3x8e -- Found host-tools: zephyr 0.16.8 (/opt/toolchains/zephyr-sdk-0.16.8) -- Found toolchain: zephyr 0.16.8 (/opt/toolchains/zephyr-sdk-0.16.8) -- Found Dtc: /opt/toolchains/zephyr-sdk-0.16.8/sysroots/x86_64-pokysdk-linux/usr/bin/dtc (found suitable version "1.6.0", minimum required is "1.4.6") -- Found BOARD.dts: /workdir/zephyr/boards/arduino/due/arduino_due.dts -- Found devicetree overlay: /workdir/micro_ros_zephyr_module/app.overlay devicetree error: /workdir/micro_ros_zephyr_module/app.overlay:2 (column 14): parse error: undefined node label 'usbotg_fs' -- In: /workdir/build/zephyr, command: /usr/bin/python3;/workdir/zephyr/scripts/dts/gen_defines.py;--dts;/workdir/build/zephyr/zephyr.dts.pre;--dtc-flags;'';--bindings-dirs;/workdir/zephyr/dts/bindings;--header-out;/workdir/build/zephyr/include/generated/zephyr/devicetree_generated.h.new;--dts-out;/workdir/build/zephyr/zephyr.dts.new;--edt-pickle-out;/workdir/build/zephyr/edt.pickle;--vendor-prefixes;/workdir/zephyr/dts/bindings/vendor-prefixes.txt CMake Error at /workdir/zephyr/cmake/modules/dts.cmake:296 (message): gen_defines.py failed with return code: 1 Call Stack (most recent call first): /workdir/zephyr/cmake/modules/zephyr_default.cmake:132 (include) /workdir/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include) /workdir/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate) CMakeLists.txt:7 (find_package)
-- Configuring incomplete, errors occurred! FATAL ERROR: command exited with status 1: /usr/bin/cmake -DWEST_PYTHON=/usr/bin/python3 -B/workdir/build -GNinja -DBOARD=arduino_due -S/workdir/micro_ros_zephyr_module
Can I somehow disable USB OTG if it is not present in the board implementation for Zephyr?