micro-ROS / micro-ROS/micro_ros_zephyr_module
Error when trying to build micro-ROS/micro_ros_zephyr_module on top of Zephyr RTOS docker container (clean environment)
还没有人认领这个 Issue。
- 主要语言
- C
- 星标
- 92
- 派生
- 56
- PR 合并指标
- 30 天内没有已合并 PR
描述
#### 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
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先比较 micro_ros_zephyr_module/app.overlay 与 zephyr/boards/arduino/due/arduino_due.dts 中的 arduino_due 板定义,重点关注未定义的 usbotg_fs 标签。使用列出的 Docker 和 west 命令重现失败,然后确认 west build -b arduino_due micro_ros_zephyr_module 能够在没有 devicetree 错误的情况下完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- c, docker
- 领域
- build-system, embedded-iot
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 45/100