NESTLab / 2122_MultiDroneIndoorSLAM

Code for 21/22 MQP and DRs on Multi Drone Indoor SLAM
0 stars 0 forks source link

Docker LD_PRELOAD #23

Closed nikopoulospet closed 2 years ago

nikopoulospet commented 2 years ago

Getting some weird stuff in docker:

This Error pops up each time I run 'ls', ERROR: ld.so: object '/usr/lib/aarch64-linux-gnu/libgomp.so.1' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.

When I print the LD_PRELOAD env variable we see that it is trying to call this object file: /usr/lib/aarch64-linux-gnu/libgomp.so.1


This file is not present in the system at the time so either we need to install it or delete the reference in LD_PRELOAD.

LD_PRELOAD is just an optional environment variable that contains info on shared libraries and objects to be 'preloaded' before other files

libgomp is the GNU compiler collection on OpenMP and can only be obtained by building the source. Additionally, it is designed with aarch64 in mind. Not sure what the configuration of the docker container is or if docker also simulates aarch64 but if it does not it makes sense to replace this file.

https://gcc.gnu.org/projects/gomp/

libgomp is designed for parallel processing. Do we currently have any dependencies that require this? If so how can we include the compilation of libgomp into the docker-compose operation?

======================== more info:

This line is present in the main nest repository Dockerfile but not the coms version. This file is system-specific and not built by docker initially. I will update and test, if this works ill make a PR

echo "export LD_PRELOAD=/usr/lib/aarch64-linux-gnu/libgomp.so.1" >> ~/.bashrc