-
Notifications
You must be signed in to change notification settings - Fork 109
Closed
Description
While following along with the readme, I encountered some build issues when building from ROS2 Crystal. @esteve , perhaps you might see the IDL issue generated from the following example Dockerfiles? I'd like to eventually get to making a dockerfile to build android apk for ROS2 with.
Dockerfile
Details
FROM ros:crystal-ros-base-bionic
# install ros build tools
RUN apt-get update && apt-get install -y \
default-jdk \
gradle \
python3-colcon-common-extensions && \
rm -rf /var/lib/apt/lists/*
# clone ros package repo
ENV ROS_WS /opt/ros_ws
RUN mkdir -p $ROS_WS/src
WORKDIR $ROS_WS
RUN git -C src clone \
https://github.com/esteve/ament_java.git
RUN git -C src clone \
https://github.com/esteve/ros2_java.git
RUN git -C src clone \
https://github.com/esteve/ros2_java_examples.git
# install ros package dependencies
RUN apt-get update && \
rosdep update && \
rosdep install -y \
--from-paths \
src/ \
--ignore-src && \
rm -rf /var/lib/apt/lists/*
# build ros package source
RUN . /opt/ros/$ROS_DISTRO/setup.sh && \
colcon build \
--cmake-args \
-DCMAKE_BUILD_TYPE=Release
# source ros package from entrypoint
RUN sed --in-place --expression \
'$isource "$ROS_WS/install/setup.bash"' \
/ros_entrypoint.sh
# run ros package launch file
CMD ["ros2", "run", "rcljava_examples", "publisher_lambda"]Build output:
Details
$ docker build .
Sending build context to Docker daemon 3.072kB
Step 1/9 : FROM ros:crystal-ros-base-bionic
---> f7af64b98e6e
Step 2/9 : RUN apt-get update && apt-get install -y default-jdk gradle python3-colcon-common-extensions && rm -rf /var/lib/apt/lists/*
---> Using cache
---> e32cdb65afc8
Step 3/9 : ENV ROS_WS /opt/ros_ws
---> Using cache
---> 2aac0bf2ddcd
Step 4/9 : RUN mkdir -p $ROS_WS/src
---> Using cache
---> 61287981f7f6
Step 5/9 : WORKDIR $ROS_WS
---> Using cache
---> 490312830e21
Step 6/9 : RUN git -C src clone https://github.com/esteve/ament_java.git
---> Using cache
---> 1c36ba2d99b5
Step 7/9 : RUN git -C src clone https://github.com/esteve/ros2_java.git
---> Using cache
---> 2cd7c01c5bca
Step 8/9 : RUN . /opt/ros/$ROS_DISTRO/setup.sh && colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
---> Running in 2a007e373d4b
Starting >>> ament_java_resources
Finished <<< ament_java_resources [0.52s]
Starting >>> ament_build_type_gradle
Finished <<< ament_build_type_gradle [0.59s]
Starting >>> ament_cmake_export_jars
Starting >>> ament_cmake_export_jni_libraries
Finished <<< ament_cmake_export_jars [0.49s]
Starting >>> rcljava_common
Finished <<< ament_cmake_export_jni_libraries [0.51s]
Finished <<< rcljava_common [3.43s]
--- stderr: rcljava_common
warning: [options] bootstrap class path not set in conjunction with -source 6
warning: [options] source value 6 is obsolete and will be removed in a future release
warning: [options] target value 1.6 is obsolete and will be removed in a future release
warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
4 warnings
---
Starting >>> rosidl_generator_java
--- stderr: rosidl_generator_java
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgConstantsfastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgBoolfastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgBytefastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgUint8fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgPrimitivesfastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgFloat64fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgInt16fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgCharfastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgFloat32fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgInt32fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgInt8fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgInt64fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgVariousfastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgUint16fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgNestedfastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgEmptyfastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgUint32fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgStringsfastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
CMake Error at cmake/rosidl_generator_java_generate_interfaces.cmake:251 (add_dependencies):
The dependency target
"rosidl_generator_java__rosidl_typesupport_fastrtps_c" of target
"msgUint64fastrtps_c" does not exist.
Call Stack (most recent call first):
/opt/ros/crystal/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
/opt/ros/crystal/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
CMakeLists.txt:73 (rosidl_generate_interfaces)
---
Failed <<< rosidl_generator_java [ Exited with code 1 ]
Summary: 5 packages finished [8.00s]
1 package failed: rosidl_generator_java
2 packages had stderr output: rcljava_common rosidl_generator_java
1 package not processed
The command '/bin/sh -c . /opt/ros/$ROS_DISTRO/setup.sh && colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release' returned a non-zero code: 1
Metadata
Metadata
Assignees
Labels
No labels