New answers tagged dynamic-linking
If the code is explicitly calling dlopen() to find files it will use LD_LIBRARY_PATH, though normal python uses $PYTHONPATH to find modules and libraries. You can also set the sys.path array: import sys sys.path.append('/mydir') Remember to export the LD_LIBRARY_PATH or PYTHONPATH.
It sounds like your library cache (/etc/ld.so.cache) had not yet been updated on the client. Check the output of ldconfig -p next time the issue occurs to confirm.
LD_DEBUG in that context is an environment variable that you've assigned the value of libs to. This on its own does does nothing except put LD_DEBUG into the environment of the command you just started. When you start a dynamically linked executable on of the first things that happens is the dynamic linker ld.so(8) does runtime linking and symbol ...
LD_DEBUG is evaluated in ld.so.1 (the dynamic linker that is called from the ELF binary) Check the man page for the dynamic linker at: http://schillix.sourceforge.net/man/man1/ld.so.1.1.html Nothing is done in the shell, everything is done "by" the executed binary. BTW: the command ldd does nothing special, it just sets some LD_* variables and then tries ...
Your system doesn't have /lib/ld.so, so it isn't equipped for dynamically linked a.out executables. It could be equipped for statically linked a.out executables, if your kernel includes support for them; Ubuntu's doesn't (this requires the CONFIG_BINFMT_AOUT kernel configuration option). The a.out format has been obsolescent on Linux for about 20 years and ...
Top 50 recent answers are included