Error while loading shared libraries: libdl.so.2 (and others), no such file. Libraries exist
I feel lucky in stumbling across this solution, but wanted to post it up in case anyone else runs across this issue in installing legacy software.
Assuming the install anywhere script is called Install.bin
# cp Install.bin Install.bak
# cat Install.bak | sed "s/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/" > Install.bin
# rm Install.bak
This worked nicely.
The fix was originally posted on the Zend Knowledgebase (now 404'ed), it is still archived on linuxquestions.org.
Related videos on Youtube
Gbo
Updated on September 18, 2022Comments
-
Gbo almost 2 years
Attempting to install a Java application from a .bin file. When opening the installer from command line, I see these errors:
[boxen]# ./ZendStudio-5_2_0.bin Preparing to install... Extracting the JRE from the installer archive... Unpacking the JRE... Extracting the installation resources from the installer archive... Configuring the installer for this system's environment... awk: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory dirname: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory /bin/ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory basename: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory dirname: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory basename: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory hostname: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory Launching installer... grep: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory /tmp/install.dir.7515/Linux/resource/jre/bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory
...
The catch is that every one of these objects exist on the system.
# locate libdl.so.2 /usr/lib/libdl.so.2 /usr/lib64/libdl.so.2 # locate libc.so.6 /usr/lib/libc.so.6 /usr/lib/i686/nosegneg/libc.so.6 /usr/lib64/libc.so.6 # locate libnsl.so.1 /usr/lib/libnsl.so.1 /usr/lib64/libnsl.so.1
If I issue this,
echo $LD_LIBRARY_PATH
I get nothing.
So, I add include directories to the path:
[boxen]# LD_LIBRARY_PATH=/usr/lib:/usr/lib64/:/usr/local/lib/:/usr/local/lib64/ [boxen]# echo $LD_LIBRARY_PATH /usr/lib:/usr/lib64/:/usr/local/lib/:/usr/local/lib64/
And re-run the installer...
[boxen]# ./ZendStudio-5_2_0.bin Preparing to install... Extracting the JRE from the installer archive... Unpacking the JRE... Extracting the installation resources from the installer archive... Configuring the installer for this system's environment... awk: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory dirname: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory /bin/ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory basename: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory dirname: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory basename: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory hostname: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory Launching installer... grep: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory /tmp/install.dir.8055/Linux/resource/jre/bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory
...
Exact same batch of errors.
Installed Java version:
java version "1.7.0_65" OpenJDK Runtime Environment (rhel-2.5.1.2.el7_0-x86_64 u65-b17) OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
Installed glib:
# rpm -qa | grep glibc glibc-2.17-55.el7.i686 glibc-2.17-55.el7.x86_64 glibc-headers-2.17-55.el7.x86_64 glibc-common-2.17-55.el7.x86_64 glibc-devel-2.17-55.el7.x86_64
What could be causing the installer to not see files that are plainly there and in the environment variable?
-
G-Man Says 'Reinstate Monica' almost 10 yearsDid you export LD_LIBRARY_PATH? If you just say LD_LIBRARY_PATH=(value), then it's visible only to the shell itself, and not to programs.
-
Gbo almost 10 yearsYes, but this wasn't the issue. Just posted the answer: unix.stackexchange.com/a/152862/20107
-