unix - variable - ld_library_path modify
ldd no puede encontrar la biblioteca en LD_LIBRARY_PATH (2)
¿Exportaste LD_LIBRARY_PATH? la palabra clave de export
le dice a Bash que envíe variables a los subprocesos; de lo contrario, ldd nunca verá LD_LIBRARY_PATH.
Estoy tratando de poner en marcha un sistema y estoy teniendo problemas con las bibliotecas compartidas de OpenMotif. Tengo su directorio en LD_LIBRARY_PATH, pero todavía no puedo encontrarlos.
Aquí hay un ejemplo:
[root@intrepid netcool]# ldd /opt/netcool/omnibus/platform/linux2x86/bin/nco_* |grep ''not found''
libXm.so.3 => not found
libXpm.so.4 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXpm.so.4 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXm.so.3 => not found
[root@intrepid netcool]# find /usr/ -name libXm.so.3
/usr/lib64/libXm.so.3
[root@intrepid netcool]# find /usr/ -name libXpm.so.4
/usr/lib64/libXpm.so.4
[root@intrepid netcool]# echo $LD_LIBRARY_PATH
/opt/netcool/omnibus//platform/linux2x86/lib/:/opt/netcool//platform/linux2x86/lib/:/usr/lib/:/usr/lib64/
Probablemente estoy haciendo algo estúpido, pero no puedo pensar en otra cosa para intentarlo.
EDITAR: Para responder a un par de las preguntas formuladas a continuación:
[root@intrepid netcool]# export LD_LIBRARY_PATH
[root@intrepid netcool]# ldd /opt/netcool/omnibus/platform/linux2x86/bin/nco_* |grep ''not found''
libXm.so.3 => not found
libXpm.so.4 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXpm.so.4 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXm.so.3 => not found
[root@intrepid netcool]# ldconfig
[root@intrepid netcool]# ldd /opt/netcool/omnibus/platform/linux2x86/bin/nco_* |grep ''not found''
libXm.so.3 => not found
libXpm.so.4 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXpm.so.4 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXm.so.3 => not found
libXm.so.3 => not found
Ok, solo traté de ejecutar uno de los ejecutables:
# ./bin/nco_xigen
/opt/netcool//omnibus/platform/linux2x86/bin/nco_xigen: error while loading shared libraries: libXm.so.3: wrong ELF class: ELFCLASS64
¿Es esto una cosa de 32 bits / 64 bits?
Los binarios que tenía buscaban las versiones de 32 bits de las bibliotecas compartidas, tenía instalado el de 64 bits. Estúpido error. LDD no produjo un mensaje de error muy perspicaz, pero el binario lo hizo cuando intenté ejecutarlo.