stereolabs / zed-ros2-wrapper

ROS 2 wrapper for the ZED SDK
https://www.stereolabs.com/docs/ros2/
Apache License 2.0
160 stars 165 forks source link

Problem colcon build zed_wrapper #148

Closed TeamRoboTo closed 1 year ago

TeamRoboTo commented 1 year ago

Preliminary Checks

Description

Hello everyone, while building this package in the docker container dustynv/ros:foxy-pytorch-l4t-r32.7.1, i have this error: image. can someone figure it out and help us? Thanks in advance for your patience.

Steps to Reproduce

  1. pull the dustynv/ros:foxy-pytorch-l4t-r32.7.1
  2. install the ZED_SDK 3.8.2
  3. pull and build zed_wrapper for ros2

Expected Result

clear build of zed_wrapper package

Actual Result

package installation fail

ZED Camera model

ZED Mini

Environment

NVIDIA NVIDIA Jetson Nano Developer Kit
 L4T 32.7.1 [ JetPack 4.6.1 ]
   Ubuntu 18.04.6 LTS
   Kernel Version: 4.9.299-tegra
 CUDA 10.2.300
   CUDA Architecture: 5.3
 OpenCV version: 4.1.1
   OpenCV Cuda: NO
 CUDNN: 8.2.1.32
 TensorRT: 8.2.1.8
 Vision Works: 1.6.0.501
 VPI: 1.2.3
 Vulcan: 1.2.70
ZED_SDK: 3.8.2

Anything else?

nope

Myzhar commented 1 year ago

Hi @TeamRoboTo You must satisfy all the dependencies to build the wrapper correctly. Can you share your Dockerfile?

TeamRoboTo commented 1 year ago

@Myzhar here you can find the file .sh we used to build the docker image https://github.com/dusty-nv/jetson-containers/blob/master/scripts/docker_build_ros.sh

Myzhar commented 1 year ago

Please note that if you are using the latest ZED ROS2 Wrapper from the master branch you must install the latest ZED SDK v4.0.x, not v3.8.2. To use the ZED SDK v3.8.2 you must use the latest release tag: https://github.com/stereolabs/zed-ros2-wrapper/releases/tag/foxy-humble-v3.8.2

TeamRoboTo commented 1 year ago

@Myzhar I am confused, i'm using ZED SDK v3.8.2

Myzhar commented 1 year ago

Yes, I noticed it. The master branch is always aligned to the latest available ZED SDK version, to use the Wrapper with older ZED SDK versions you must retrieve a tagged release specifically made for that version.

TeamRoboTo commented 1 year ago

ok thank you now we managed to build the package but when we try to tun th ecommand "$ ros2 launch zed_wrapper zedm.launch.py" I get the following error: ros2 launch zed_wrapper zedm.launch.py [INFO] [launch]: All log files can be found below /root/.ros/log/2023-05-04-18-43-33-682404-ubuntu-8124 [INFO] [launch]: Default logging verbosity is set to INFO Task exception was never retrieved future: <Task finished name='Task-2' coro=<LaunchService._process_one_event() done, defined at /opt/ros/foxy/install/lib/python3.8/site-packages/launch/launch_service.py:226> exception=SubstitutionFailure('executed command failed. Command: xacro /ros2_ws/install/zed_wrapper/share/zed_wrapper/urdf/zed_descr.urdf.xacro camera_name:=zedm camera_model:=zedm base_frame:=base_link gnss_frame:= cam_pos_x:=0.0 cam_pos_y:=0.0 cam_pos_z:=0.0 cam_roll:=0.0 cam_pitch:=0.0 cam_yaw:=0.0')> Traceback (most recent call last): File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/launch_service.py", line 228, in _process_one_event await self.process_event(next_event) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/launch_service.py", line 248, in process_event visit_all_entities_and_collect_futures(entity, self.context)) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context) [Previous line repeated 4 more times] File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 38, in visit_all_entities_and_collect_futures sub_entities = entity.visit(context) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/action.py", line 108, in visit return self.execute(context) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch_ros/actions/node.py", line 444, in execute self._perform_substitutions(context) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch_ros/actions/node.py", line 399, in _perform_substitutions evaluated_parameters = evaluate_parameters(context, self.parameters) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch_ros/utilities/evaluate_parameters.py", line 164, in evaluate_parameters output_params.append(evaluate_parameter_dict(context, param)) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch_ros/utilities/evaluate_parameters.py", line 71, in evaluate_parameter_dict evaluated_value = perform_substitutions(context, list(value)) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/utilities/perform_substitutions_impl.py", line 26, in perform_substitutions return ''.join([context.perform_substitution(sub) for sub in subs]) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/utilities/perform_substitutions_impl.py", line 26, in return ''.join([context.perform_substitution(sub) for sub in subs]) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/launch_context.py", line 232, in perform_substitution return substitution.perform(self) File "/opt/ros/foxy/install/lib/python3.8/site-packages/launch/substitutions/command.py", line 116, in perform raise SubstitutionFailure(f'executed command failed. Command: {command_str}') launch.substitutions.substitution_failure.SubstitutionFailure: executed command failed. Command: xacro /ros2_ws/install/zed_wrapper/share/zed_wrapper/urdf/zed_descr.urdf.xacro camera_name:=zedm camera_model:=zedm base_frame:=base_link gnss_frame:= cam_pos_x:=0.0 cam_pos_y:=0.0 cam_pos_z:=0.0 cam_roll:=0.0 cam_pitch:=0.0 cam_yaw:=0.0

Myzhar commented 1 year ago

You miss the xacro dependency and it's surely not the only missing dependency, you must surely install also diagnostic

TeamRoboTo commented 1 year ago

@Myzhar I tried to install xacro, but I didn't managed. Is it possible that the fact of havig ros2-foxy-base and not ros2-foxy-desktop may prevent the use of xacro ?

Myzhar commented 1 year ago

You probably did not install xacro correctly

Icon45 commented 1 year ago

Hi, im getting the same error, but i used the latest zed sdk version and cloned this repo.

This is the output of my colcon build:

Starting >>> zed_components --- stderr: zed_components
CMake Warning at CMakeLists.txt:116 (find_package): By not providing "Findzed_interfaces.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "zed_interfaces", but CMake did not find one.

Could not find a package configuration file provided by "zed_interfaces" with any of the following names:

zed_interfacesConfig.cmake
zed_interfaces-config.cmake

Add the installation prefix of "zed_interfaces" to CMAKE_PREFIX_PATH or set "zed_interfaces_DIR" to a directory containing one of the above files. If "zed_interfaces" provides a separate development package or SDK, be sure it has been installed.

CMake Error at CMakeLists.txt:126 (find_package): By not providing "Findnmea_msgs.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "nmea_msgs", but CMake did not find one.

Could not find a package configuration file provided by "nmea_msgs" with any of the following names:

nmea_msgsConfig.cmake
nmea_msgs-config.cmake

Add the installation prefix of "nmea_msgs" to CMAKE_PREFIX_PATH or set "nmea_msgs_DIR" to a directory containing one of the above files. If "nmea_msgs" provides a separate development package or SDK, be sure it has been installed.


Failed <<< zed_components [13.7s, exited with code 1]

Summary: 0 packages finished [14.7s] 1 package failed: zed_components 1 package had stderr output: zed_components 2 packages not processed

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment otherwise it will be automatically closed in 5 days