2010-04-06 12 views
6

Ścieżka do libidl.so.7.1 jest w ld.so.conf, a biblioteka jest w pamięci podręcznej, a także:program nie znajdzie więc biblioteka, choć ldconfig wie o tym

$ /sbin/ldconfig -p | grep libidl.so.7.1 
    libidl.so.7.1 (libc6) => /opt/itt/idl71/bin/bin.linux.x86/libidl.so.7.1 

jednak z jakiegoś powodu nie zostanie znaleziony przez ldd:

$ ldd _pyIDLmodule.so | grep libidl.so.7.1 
    libidl.so.7.1 => not found 

Jednak jeśli jawnie dodać ścieżkę do LD_LIBRARY_PATH, to działa:

$ export LD_LIBRARY_PATH=/opt/itt/idl71/bin/bin.linux.x86_64/ 
$ ldd _pyIDLmodule.so | grep libidl.so.7.1 
libidl.so.7.1 => /opt/itt/idl71/bin/bin.linux.x86_64/libidl.so.7.1 (0x00002b7428ee7000) 

Co robię źle? Dlaczego ldd nie znajduje biblioteki?

Odpowiedz

5

eksportować .x86_64 jeszcze config -p pokazuje .x86 (bez _64)

Nie jestem pewien, czy to ma znaczenie czy nie, ale myślałem, że to ciekawy.

+0

Tak, to było to. Domyślam się, że biblioteka znajdowała się w pamięci podręcznej, ale nie można jej załadować, ponieważ była 32-bitowa. Dzięki! – Nikratio

Powiązane problemy