carnegierobotics / multisense_ros

ROS Wrapper for LibMultiSense
Other
7 stars 18 forks source link

undefined reference to `cv::Mat::updateContinuityFlag()' While building Melodic source on Nvidia Jetson AGX #50

Closed jayben-2022 closed 1 year ago

jayben-2022 commented 1 year ago

Hi, I am trying to build Ros-Melodic source for Multisense S21 using this documentation https://docs.carnegierobotics.com/S21/install.html#install:melodic:source

Ever command before "catkin_make" runs fine but when i try to execute catkin_make, i get following errors


jayben@ubuntu:~/build$ catkin_make Base path: /home/jayben/build Source space: /home/jayben/build/src Build space: /home/jayben/build/build Devel space: /home/jayben/build/devel Install space: /home/jayben/build/install

Running command: "make cmake_check_build_system" in "/home/jayben/build/build"

Running command: "make -j4 -l4" in "/home/jayben/build/build"

[ 0%] Built target sensor_msgs_generate_messages_nodejs [ 7%] Built target MultiSense [ 7%] Built target _multisense_ros_generate_messages_check_deps_RawLidarCal [ 7%] Built target _multisense_ros_generate_messages_check_deps_RawCamCal [ 7%] Built target _multisense_ros_generate_messages_check_deps_RawLidarData [ 7%] Built target _multisense_ros_generate_messages_check_deps_RawCamData [ 7%] Built target _multisense_ros_generate_messages_check_deps_DeviceStatus [ 7%] Built target _multisense_ros_generate_messages_check_deps_StampedPps [ 7%] Built target _multisense_ros_generate_messages_check_deps_Histogram [ 7%] Built target _multisense_ros_generate_messages_check_deps_DeviceInfo [ 7%] Built target sensor_msgs_generate_messages_py [ 7%] Built target sensor_msgs_generate_messages_cpp [ 7%] Built target _multisense_ros_generate_messages_check_deps_RawCamConfig [ 7%] Built target _multisense_ros_generate_messages_check_deps_RawImuData [ 7%] Built target sensor_msgs_generate_messages_eus [ 7%] Built target sensor_msgs_generate_messages_lisp [ 8%] Built target multisense_ros_gencfg [ 11%] Built target color_laser_publisher [ 13%] Built target ChangeFps [ 14%] Built target ChangeResolution [ 16%] Built target ChangeIpUtility [ 18%] Built target ChangeTransmitDelay [ 19%] Built target ColorImageUtility [ 21%] Built target DirectedStreamsUtility [ 22%] Built target ExternalCalUtility [ 25%] Built target DeviceInfoUtility [ 27%] Built target FlashUtility [ 28%] Built target ImageCalUtility [ 30%] Built target ImuTestUtility [ 32%] Built target ImuConfigUtility [ 34%] Built target PointCloudUtility [ 35%] Built target LidarCalUtility [ 38%] Built target SaveImageUtility [ 39%] Built target RectifiedFocalLengthUtility [ 41%] Built target SensorCalUtility [ 42%] Built target VersionInfoUtility [ 51%] Built target multisense_ros_generate_messages_py [ 59%] Built target multisense_ros_generate_messages_nodejs [ 69%] Built target multisense_ros_generate_messages_eus [ 78%] Built target multisense_ros_generate_messages_cpp [ 86%] Built target multisense_ros_generate_messages_lisp [ 86%] Built target MultiSenseUpdater [ 89%] Built target raw_snapshot [ 89%] Built target multisense_ros_generate_messages [ 97%] Built target multisense_ros [ 98%] Linking CXX executable /home/jayben/build/devel/lib/multisense_ros/ros_driver /home/jayben/build/devel/lib/libmultisense_ros.so: undefined reference to cv::Mat::updateContinuityFlag()' /home/jayben/build/devel/lib/libmultisense_ros.so: undefined reference tocv::error(int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, char const, char const, int)' collect2: error: ld returned 1 exit status multisense/multisense_ros/CMakeFiles/ros_driver.dir/build.make:243: recipe for target '/home/jayben/build/devel/lib/multisense_ros/ros_driver' failed make[2]: [/home/jayben/build/devel/lib/multisense_ros/ros_driver] Error 1 CMakeFiles/Makefile2:4457: recipe for target 'multisense/multisense_ros/CMakeFiles/ros_driver.dir/all' failed make[1]: [multisense/multisense_ros/CMakeFiles/ros_driver.dir/all] Error 2 Makefile:140: recipe for target 'all' failed make: *** [all] Error 2 Invoking "make -j4 -l4" failed

I am using Jetson AGX with ubuntu 18.04LTS installed on it and OpenCv 4.1.1 is installed.

mattalvarado commented 1 year ago

We have seen issues building the MultiSense ROS driver on Jetson targets which were the result of multiple conflicting installed OpenCV versions. I believe ROS ships with OpenCV v4.2, and the Jetpack ships with OpenCV v4.5. Is there any way you can remove the other OpenCV versions so that only the v4.2 version that ships with ROS is installed on your system?

jayben-2022 commented 1 year ago

Installed the pre-build binary instead of building it.