ros-tooling / cross_compile

A tool to build ROS and ROS2 workspaces for various targets
Apache License 2.0
188 stars 60 forks source link

python3-dev is not installed by rosdep when trying to build Foxy #189

Closed emersonknapp closed 4 years ago

emersonknapp commented 4 years ago

Description

When using this tool to build the ROS 2 Core on master (Foxy) - rcutils fails to build because it can't find Python libraries. For now, the base image has been modified to install it explicitly (https://github.com/ros-tooling/cross_compile/blob/master/ros_cross_compile/docker/sysroot.Dockerfile#L48) but this is undesirable as it is not needed for all builds.

See "To Reproduce" for the details on performing this build.

Expected Behavior

Successful build.

Actual Behavior

INFO:Docker Client:--- stderr: rcutils
INFO:Docker Client:CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
INFO:Docker Client:  Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)
INFO:Docker Client:  (Required is at least version "3.5")
INFO:Docker Client:Call Stack (most recent call first):
INFO:Docker Client:  /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)
INFO:Docker Client:  /usr/share/cmake-3.16/Modules/FindPythonLibs.cmake:310 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
INFO:Docker Client:  /ros_ws/install_x86_64/python_cmake_module/share/python_cmake_module/cmake/Modules/FindPythonExtra.cmake:133 (find_package)
INFO:Docker Client:  /ros_ws/install_x86_64/launch_testing_ament_cmake/share/launch_testing_ament_cmake/cmake/launch_testing_ament_cmake-extras.cmake:18 (find_package)
INFO:Docker Client:  /ros_ws/install_x86_64/launch_testing_ament_cmake/share/launch_testing_ament_cmake/cmake/launch_testing_ament_cmakeConfig.cmake:41 (include)
INFO:Docker Client:  /ros_ws/install_x86_64/ament_lint_auto/share/ament_lint_auto/cmake/ament_lint_auto_find_test_dependencies.cmake:36 (find_package)
INFO:Docker Client:  CMakeLists.txt:127 (ament_lint_auto_find_test_dependencies)

To Reproduce

rcutils.yaml

list:
  packages-up-to: ["rcutils"]
build:
  packages-up-to: ["rcutils"]
git clone git@github.com:ros2/ros2
cd ros2
mkdir src
vcs import src < ros2.repos
ros_cross_compile \
  --arch x86_64 \ 
  --os ubuntu \ 
  --rosdistro foxy \
  --colcon-defaults rcutils.yaml \
  --skip-rosdep-keys console_bridge fastcdr fastrtps rti-connext-dds-5.3.1 urdfdom_headers

System (please complete the following information)

Additional context

Add any other context about the problem here

emersonknapp commented 4 years ago

Assigned to me to validate whether this is still the case.

emersonknapp commented 4 years ago

This is not relevant anymore