micro-ROS / micro-ROS/micro_ros_setup
Cannot build micro-ros for Android device
Personne n'a encore pris cette issue.
- Langage dominant
- Shell
- Étoiles
- 509
- Forks
- 183
- Merge moyen
- 22 h 26 min
- PR mergées (30 j)
- 7
Description
Issue template
- Hardware description: arm64-v8a
- RTOS: Ubuntu 22.04 through WSL2
- Installation type: micro_ros_setup
- Version or commit hash: humble
Steps to reproduce the issue
On the host machine, run:
mkdir microros_ws && cd microros_ws
git clone -b humble https://github.com/micro-ROS/micro_ros_setup.git src/micro_ros_setup
rosdep update && rosdep install --from-paths src --ignore-src -y
colcon build
source install/local_setup.bash
ros2 run micro_ros_setup create_firmware_ws.sh android generic
ros2 run micro_ros_setup configure_firmware.sh
ros2 run micro_ros_setup build_firmware.sh ~/android_sdk/ndk/25.2.9519653/build/cmake/android.toolchain.cmake
Expected behavior
Micro-ros is built correctly.
Actual behavior
An error is raised when building the package micro_ros_demos_rclc.
The error is the following:
Starting >>> micro_ros_demos_rclc
--- stderr: micro_ros_demos_rclc
CMake Error at /home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/rosidl_typesupport_microxrcedds_c/cmake/ament_cmake_export_dependencies-extras.cmake:21 (find_package):
Could not find a configuration file for package "microcdr" that is
compatible with requested version "".
The following configuration files were considered but not accepted:
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/microcdr/cmake/microcdrConfig.cmake, version: 2.0.1 (64bit)
Call Stack (most recent call first):
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/rosidl_typesupport_microxrcedds_c/cmake/rosidl_typesupport_microxrcedds_cConfig.cmake:41 (include)
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/rosidl_typesupport_c/cmake/rosidl_typesupport_c-extras.cmake:13 (find_package)
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/rosidl_typesupport_c/cmake/rosidl_typesupport_cConfig.cmake:41 (include)
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/builtin_interfaces/cmake/ament_cmake_export_dependencies-extras.cmake:21 (find_package)
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/builtin_interfaces/cmake/builtin_interfacesConfig.cmake:41 (include)
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/rcl_interfaces/cmake/ament_cmake_export_dependencies-extras.cmake:21 (find_package)
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/rcl_interfaces/cmake/rcl_interfacesConfig.cmake:41 (include)
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/rcl/cmake/ament_cmake_export_dependencies-extras.cmake:21 (find_package)
/home/user_ai_001/microros_ws/firmware/mcu_ws/install/share/rcl/cmake/rclConfig.cmake:41 (include)
CMakeLists.txt:6 (find_package)
gmake[2]: *** [CMakeFiles/graph_visualizer.dir/build.make:95: graph_introspection/graph_visualizer/src/graph_visualizer-stamp/graph_visualizer-configure] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:192: CMakeFiles/graph_visualizer.dir/all] Error 2
Additional information
The following environment variables are set:
export ANDROID_HOME='~/android_sdk/'
export ANDROID_NDK='~/android_sdk/ndk/25.2.9519653'
export ANDROID_NATIVE_API_LEVEL=android-31
export ANDROID_ABI=arm64-v8a
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le fichier CMakeLists.txt de micro_ros_demos_rclc à la ligne 6 et par la configuration de microcdr indiquée sous firmware/mcu_ws/install ; cherchez pourquoi la compilation Android rejette la version installée de microcdr. Relancez build_firmware.sh avec l’environnement Android indiqué et confirmez que le paquet, y compris micro_ros_demos_rclc, se compile correctement.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- android, cmake, shell
- Domaine
- build-system, embedded-iot, mobile
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100