NVIDIA-ISAAC-ROS / isaac_ros_dnn_inference

NVIDIA-accelerated DNN model inference ROS 2 packages using NVIDIA Triton/TensorRT for both Jetson and x86_64 with CUDA-capable GPU
https://developer.nvidia.com/isaac-ros-gems
Apache License 2.0
104 stars 17 forks source link

Error running in ROS galactic libgxf_ros_bridge.so: undefined symbol: _Z16_demangle_symbolPKc #9

Closed mitchsayre closed 2 years ago

mitchsayre commented 2 years ago

Hello. My system currently runs in ROS2 Galactic instead of Foxy. I am trying to run the detection script from https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_pose_estimation in the container but am getting an error with libgxf_ros_bridge.so and I suspect it is because I am using galactic instead of foxy. Is there any way I could get access to a different .so file or is there another way to fix this issue?

ros2 launch /workspaces/isaac_ros-dev/isaac_ros_pose_estimation/isaac_ros_dope/launch/isaac_ros_dope_tensor_rt.launch.py 
[INFO] [launch]: All log files can be found below /home/admin/.ros/log/2022-02-15-22-14-04-514228-operator-6066
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [component_container-1]: process started with pid [6079]
[component_container-1] [INFO] [1644963245.380737123] [dope_container]: Load Library: /workspaces/isaac_ros-dev/install/isaac_ros_dnn_encoders/lib/libdnn_image_encoder_node.so
[component_container-1] [INFO] [1644963245.679776047] [dope_container]: Found class: rclcpp_components::NodeFactoryTemplate<isaac_ros::dnn_inference::DnnImageEncoderNode>
[component_container-1] [INFO] [1644963245.679936212] [dope_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<isaac_ros::dnn_inference::DnnImageEncoderNode>
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/dope_encoder' in container '/dope_container'
[component_container-1] [INFO] [1644963245.700632235] [dope_container]: Load Library: /workspaces/isaac_ros-dev/install/isaac_ros_tensor_rt/lib/libtensor_rt_node.so
[component_container-1] [INFO] [1644963245.706709553] [dope_container]: Found class: rclcpp_components::NodeFactoryTemplate<isaac_ros::dnn_inference::TensorRTNode>
[component_container-1] [INFO] [1644963245.706819289] [dope_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<isaac_ros::dnn_inference::TensorRTNode>
[component_container-1] [INFO] [1644963245.714073339] [dope_inference]: /workspaces/isaac_ros-dev/install/isaac_ros_tensor_rt/share/isaac_ros_tensor_rt
[component_container-1] [INFO] [1644963245.714154812] [dope_inference]: Creating context
[component_container-1] 2022-02-15 22:14:06.112 ERROR gxf/std/extension_loader.cpp@109: /workspaces/isaac_ros-dev/install/isaac_ros_nvengine/share/isaac_ros_nvengine/gxf/libgxf_ros_bridge.so: undefined symbol: _Z16_demangle_symbolPKc
[component_container-1] [ERROR] [1644963246.112833164] [dope_inference]: LoadExtensionManifest Error: GXF_EXTENSION_FILE_NOT_FOUND
[component_container-1] [ERROR] [1644963246.113712813] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113748958] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113773770] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113795166] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113818041] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113836551] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113864376] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113885312] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113904713] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113923506] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113941735] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113964475] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.113982612] [dope_inference]: GXF Entity find failed
[component_container-1] [ERROR] [1644963246.114001445] [dope_inference]: GXF Entity find failed
[component_container-1] [INFO] [1644963246.114021548] [dope_inference]: Initializing...
[component_container-1] [INFO] [1644963246.114330965] [dope_inference]: Running...
[component_container-1] 2022-02-15 22:14:06.114 WARN  gxf/std/program.cpp@305: No system specified. Nothing to do
hemalshahNV commented 2 years ago

You're right that this is because you're running against Galactic and those binaries were compiled against Foxy. We don't support Galactic unfortunately but we will be supporting Humble coming out in May 2022 if that helps.

mitchsayre commented 2 years ago

Ok understood I appreciate the quick response! My current system works in Galactic so I will figure out how to run the pose estimation container in Foxy and then convert its data output to work with the rest of our system in Galactic. I will post here with steps once I get it working in case anyone else has a similar use case and then close the issue.

mitchsayre commented 2 years ago

I am now able to run pose estimation in ROS Foxy and have the output available in Galactic. Installing this on the machine or container running the foxy code will resolve the difference: https://github.com/ros2/rmw_cyclonedds

sudo apt install ros-foxy-rmw-cyclonedds-cpp