Micro-ROS embedded board tutorial error
Hi, I am trying the tutorial for micro-Ros on embedded board
I have the following error after building the docker.
-- Build files have been written to: /root/apps/microxrcedds/Micro-XRCE-DDS-Client/build
make[4]: *** No rule to make target 'install'. Stop.
make[4]: Entering directory '/root/apps/microxrcedds/Micro-XRCE-DDS-Client/build'
make[4]: Leaving directory '/root/apps/microxrcedds/Micro-XRCE-DDS-Client/build'
Makefile:101: recipe for target '/root/apps/microxrcedds/Micro-XRCE-DDS-Client/build/install/lib/libmicroxrcedds_client.a' failed
make[3]: Leaving directory '/root/apps/microxrcedds'
make[3]: *** [/root/apps/microxrcedds/Micro-XRCE-DDS-Client/build/install/lib/libmicroxrcedds_client.a] Error 2
Makefile:106: recipe for target 'microxrcedds_context' failed
make[2]: *** [microxrcedds_context] Error 2
make[2]: Leaving directory '/root/apps'
Makefile:179: recipe for target 'context_serialize' failed
make[1]: *** [context_serialize] Error 2
make[1]: Leaving directory '/root/apps'
tools/Makefile.unix:345: recipe for target 'context' failed
make: *** [context] Error 2
The command '/bin/sh -c cd nuttx && tools/configure.sh ../configs/olimex-stm32-e407/microxrcedds && make' returned a non-zero code: 2
rosteam@rosteam-ThinkPad-L480:~$
How to fix it ?
Asked by Viplav04 on 2019-08-07 10:21:41 UTC
Answers
We're currently working heavily on a new build system for micro-ROS, using the standard tools (colcon, rosdep) at the front-end. The NuttX-specific commands and tooling are hidden from the user. The corresponding repo can be found at https://github.com/micro-ROS/micro-ros-build/.
A tutorial for the new build system will be published at https://micro-ros.github.io/docs/tutorials/basic/micro_ros_build/ soon, cf. https://github.com/micro-ROS/micro-ROS.github.io/pull/65/files.
Asked by ralph-lange on 2019-08-08 02:46:54 UTC
Comments
Hello
thanks for your reply. When do you expect it to be completed?
Asked by Viplav04 on 2019-08-08 03:08:21 UTC
Just a few days. I served as a beta-tester for the instructions and could (with some additional hints, cf. the comments in the PR https://github.com/micro-ROS/micro-ROS.github.io/pull/65/files) reproduce all steps, except the very last one.
Asked by ralph-lange on 2019-08-08 15:07:01 UTC
Could you tell what the line: tools/configure.sh configs/olimex-stm32-e407/drive_base # FOR EXAMPLE!
is doing? Since in other setting folders for other boards, there are no such folders.
Asked by femust on 2019-08-14 08:38:17 UTC
@femust
This is for configuring the board. The developers are using kobuki example on the olimex-stm32-e407 board. Therefore you will not find that on other boards. Are you still working on micro-ROS? Using the old tutorials? I am stuck at configuring the board with micro-ROS, it builds my packages but after that gives the following error: Summary: 120 packages finished [20.7s] /bin/sh: 4: --cmake-args: not found Makefile:31: recipe for target 'colcon_compile' failed make[3]: *** [colcon_compile] Error 127 make[3]: Leaving directory '/home/rosteam/Documents/nuttx_os/apps/uros' Makefile:106: recipe for target 'uros_context' failed make[2]: *** [uros_context] Error 2 make[2]: Leaving directory '/home/rosteam/Documents/nuttx_os/apps' Makefile:179: recipe for target 'context_serialize' failed make[1]: *** [context_serialize] Error 2 make[1]: Leaving directory '/home/rosteam/Documents/nuttx_os/apps' tools/Makefile.unix:345: recipe for target 'context' failed make: *** [context] Error 2
Asked by Viplav04 on 2019-09-10 09:11:11 UTC
@femust NuttX has many configuration options, which are very tricky to get right for the casual user. Therefore, in the configsfolder, pre-defined configuration files can be placed. Since not all boards support all features, these configurations are board-specific.
I'm the author of the "drive_base" configuration, and I only use the Olimex STM-E407 board, which is the Micro-ROS reference board. That's why the "drive_base" example is only available for that board. In the future, we plan to support more boards, but probably just a few more.
btw, other boards are lacking more than just configurations. We have also modified the board support package to work with C++, etc. Therefore, unless you're a NuttX expert, I recommend that you get the Olimex board for experimenting with Micro-ROS.
Asked by ingo on 2019-09-10 11:32:13 UTC
Comments