This is as a Lab Notebook which describes how to solve a specific problem at a specific time. Please keep this in mind as you read and use the content. Please pay close attention to the date, version information and other details.
The problem (2022-09-30)
The latest version of the Robot Operating System, Humble Hawksbill https://www.openrobotics.org/blog/2022/5/24/ros-2-humble-hawksbill-release, uses a version of
libQtCore.so.5 that is not compatible with the HPCC Linux kernel version (3.10 as of writing). Specifically, it requires kernel version 3.15+. When the ROS is installed into a Docker container, and used inside a Singularity image with e.g.
singularity pull docker://morris2001/humble and
singularity run humble_latest.sif, the
rqt command inside the Singularity image will result in the error:
Inside your Dockerfile where you build the ROS container with Ubuntu 22.04, add the command
This is based on discussion here: https://github.com/dnschneid/crouton/wiki/Fix-error-while-loading-shared-libraries:-libQt5Core.so.5
This command removes the offending piece of code that is incompatible with the HPCC Linux kernel, and allows
rqt to launch successfully.
OpenCV is an important Python package for various parts of ROS. Make sure you install it in your Docker container by adding the command
to your Dockerfile.