0
$\begingroup$

I'm currently migrating a ROS1 project from an Nvidia Jetson Nano which used Ubuntu 18.04 and hence ROS Melodic to an Nvidia Jetson Orin NX which uses Ubuntu 20.04 with ROS Noetic. I've installed all dependencies (i think), set up the environment and downloaded the source of my project without changes, however running catkin_make results in it failing during the linking stage with the following errors:

/bin/ld: /opt/ros/noetic/lib/multisense_ros.so: undefined reference to 'tjDestroy'
/bin/ld: /opt/ros/noetic/lib/multisense_ros.so: undefined reference to 'tjInitDecompress'
/bin/ld: /opt/ros/noetic/lib/multisense_ros.so: undefined reference to 'tjDecompress2'

From what i gather this undefined references are to functions of libturbojpeg, however when running apt search libturbojpeg i can verify that i have installed both libturbojpeg and libturbojpeg0-dev which is the same case as in the Jetson Nano and i can compile a turbojpeg sample program using the -lturbojpeg flag with gcc.

Running find /usr -name libturbojpeg.so* yields in both systems:

/usr/lib/aarch64-linux-gnu/libturbojpeg.so.0.2.0
/usr/lib/aarch64-linux-gnu/libturbojpeg.so.0
/usr/lib/aarch64-linux-gnu/libturbojpeg.so

With the only exception of libturbojpeg.so.0.2.0 being version 0.1.0 in the Jetson Nano.

I've also tried getting any potentially missing dependencies using rosdep install multisense and rosdep install [NAME_OF_MY_PROJECT], getting all required rosdeps installed successfully in both cases.

I'm running out of ideas.

$\endgroup$
1
  • $\begingroup$ It seems like the new libraries are not linked in the environment, Try running the command sudo ldconfig and try the catkin_make command in a new terminal. $\endgroup$ Commented Aug 22 at 2:37

1 Answer 1

0
$\begingroup$

It can be related to your find_packages() in your CMakeLists.txt. Can you share with us your CMakeLists.txt file?

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.