micro-ROS / micro-ROS/micro_ros_arduino

Building the precompiled library with docker fails on ARM cores

Open
#1,583 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
576
Forks
146
PR merge metrics
No merged PRs in 30d

Description

Hi, I need your help.
I wanted to use docker to recompile the source code:
1. docker pull microros/micro_ros_static_library_builder: iron (or humble)
2. docker run -it --rm -v $(pwd):/project --env MICROROS_LIBRARY_FOLDER=extras microros/micro_ros_static_library_builder: iron (or humble)

My system: board ESP32-DevKit, agent machine: Intel NUC i5, Pi4, Ubuntu 22.04, ROS humble.

Problems: I could build the library on intel core, but always failed on ARM cores such as Pi 4.

Output with Pi 4:

/uros_ws/gcc-arm-none-eabi-7-2017-q4-major/bin/arm-none-eabi-gcc: 1: ELF: not found
/uros_ws/gcc-arm-none-eabi-7-2017-q4-major/bin/arm-none-eabi-gcc: 1: Syntax error: Unterminated quoted string

Failed <<< microcdr [6.90s, exited with code 2]

/uros_ws/gcc-arm-none-eabi-9-2020-q2-update/bin/arm-none-eabi-gcc: 1: ELF: not found
/uros_ws/gcc-arm-none-eabi-9-2020-q2-update/bin/arm-none-eabi-gcc: 2: Syntax error: "(" unexpected

CMake Error at CMakeLists.txt:3 (project):
The CMAKE_CXX_COMPILER:
/uros_ws/gcc-arm-none-eabi-5_4-2016q3/bin/arm-none-eabi-g++
is not a full path to an existing compiler tool.

Failed <<< rcutils [2.01s, exited with code 1]

I did a lot of searches, without finding any solution.

Contributor guide

Open the contributing guide

Research direction

Reproduce the Docker build with the micro_ros_static_library_builder image and the provided volume and MICROROS_LIBRARY_FOLDER settings on an ARM system. Start with the reported arm-none-eabi-gcc failures and CMakeLists.txt:3; done means the precompiled library builds successfully on ARM.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, cmake, docker
Domain
build-system, embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.