Für diese Frage verwende ich ein spezielles Beispiel, aber dies verallgemeinert so ziemlich jede Binärdatei unter Linux, die ihre abhängigen Bibliotheken nicht zu finden scheint. Ich habe also ein Programm, das wegen fehlender Bibliotheken nicht ausgeführt werden kann:
./cart5: error while loading shared libraries: libcorona-1.0.2.so: cannot open shared object file: No such file or directory
ldd beleuchtet das Problem:
linux-vdso.so.1 => (0x00007fff18b01000)
libcorona-1.0.2.so => not found
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.3/libstdc++.so.6 (0x00007f0975830000)
libm.so.6 => /lib/libm.so.6 (0x00007f09755af000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f0975399000)
libc.so.6 => /lib/libc.so.6 (0x00007f0975040000)
libz.so.1 => /lib/libz.so.1 (0x00007f0974e2b000)
/lib64/ld-linux-x86-64.so.2 (0x00007f0975b36000)
Corona ist jedoch installiert:
oliver@human$ find / -name libcorona-1.0.2.so 2> /dev/null
/usr/local/lib64/libcorona-1.0.2.so
/home/oliver/installed/corona-1.0.2/src/.libs/libcorona-1.0.2.so
Wie sage ich der Binärdatei, wo nach der "fehlenden" Bibliothek zu suchen ist?