linux - Linking to wrong library version in a C++ application -
i'm troubleshooting c++ binary on rhel/centos 5, has problems openssl shared libraries. don't c/c++ programming, , i'm having trouble finding root issue.
what seems going wrong application linking specific versions of libcrypto , libssl (0.9.8), instead of symlinked paths of /lib/libcrypto.so.6
, /lib/libssl.so.6
. since openssl libs have been updated since compiled, it's broken.
ldd
shows following 2 problems binary:
libcrypto.so.0.9.8 => not found libssl.so.0.9.8 => not found
[edit] obtained source, , built correctly. i'm going have go simplest possible explanation, build machine misconfigured non-standard libraries, , makefiles fine.
a couple suggestions (i'm assuming have no way of getting new binary links new versions of ssl libs):
get old versions of libs previous version of package , keep them around binary (you put them somewhere out of /usr/lib , load them program ld_library_path).
force loading new versions of libs ld_preload , hope symbols binary needs there , binary runs. has quite slim chance of working, it's worth try.
Comments
Post a Comment