[ros-users] [Discourse.ros.org] [Next Generation ROS] How to cross-compile ROS2 for arm64 architecture

Adam Jiang ros.discourse at gmail.com
Thu Jan 18 14:52:18 UTC 2018



By these, cross-compilation is working.

    sed -e '/py/ s/^#*/#/' -i src/ros2/rosidl_typesupport/rosidl_default_generators/CMakeLists.txt
    sed -i -r 's/<build(.+?py.+?)/<\!\-\-build\1\-\->/' src/ros2/rosidl_typesupport/rosidl_default_generators/package.xml

    touch \
      src/ros2/demos/AMENT_IGNORE \
      src/ros2/examples/rclpy/AMENT_IGNORE \
      src/ros2/geometry2/AMENT_IGNORE \
      src/ros2/orocos_kinematics_dynamics/AMENT_IGNORE \
      src/ros2/rclpy/AMENT_IGNORE \
      src/ros2/rcl_interfaces/test_msgs/AMENT_IGNORE \
      src/ros2/robot_model/AMENT_IGNORE \
      src/ros2/robot_state_publisher/AMENT_IGNORE \
      src/ros2/ros1_bridge/AMENT_IGNORE \
      src/ros2/rosidl/rosidl_generator_py/AMENT_IGNORE \
      src/ros2/system_tests/AMENT_IGNORE \
      src/ros2/urdfdom/AMENT_IGNORE \
      src/ros2/urdfdom_headers/AMENT_IGNORE \
      src/ros2/urdf/AMENT_IGNORE \
      src/ros2/urdfdom/AMENT_IGNORE \
      src/ros2/kdl_parser/AMENT_IGNORE

    src/ament/ament_tools/scripts/ament.py build \
        --force-cmake-configure \
        --skip-packages resource_retriever \
                rviz_assimp_vendor rviz_ogre_vendor \
                rviz_yaml_cpp_vendor rviz_rendering \
                rviz_rendering_tests rviz_common \
                rviz2 rviz_default_plugins \
        --cmake-args \
        -DCMAKE_TOOLCHAIN_FILE=`pwd`/aarch64_toolchainfile.cmake \
        -DTHIRDPARTY=ON --

However, 'ExternalProject_Add' macro could not take toolchain settings into CMake based vendor package. That is the reason why 'resource_retriever' package is skipped. I may spend some time to look into the issue.





---
[Visit Topic](https://discourse.ros.org/t/how-to-cross-compile-ros2-for-arm64-architecture/3702/5) or reply to this email to respond.




More information about the ros-users mailing list