Reputation: 83
I'm trying to build curl 7.41.0 on our custom linux distribution after updating openssl from 0.9.8 to 1.0.x. I've tried with 1.0.1m and 1.0.2a. Running ldd on the curl .so libraries correctly shows libssl.so.1.0.0 and libcrypto.so.1.0.0, but the curl binary shows dependencies on BOTH 0.9.8 and 1.0.0 for libssl and libcrypto .so files.
This is not a side-by-side install of openssl, we are removing 0.9.8 and rebuilding all packages that depend on it. Since the 0.9.8 libraries are no longer on the system, ldd shows "not found" for those entries. The header files for openssl are updated as well, so it's not including old headers. There are no traces of 0.9.8 left on the system that I know of.
Other packages including openssh and wget compile fine and only dynamically link against the 1.0.0 .so files.
Upvotes: 1
Views: 725
Reputation: 83
I figured out what the problem was. The old curl was still installed, and both versions have a libcurl.so.4. When building the rpm, or running the new curl from the build directory before it was installed, the system was linking it against the old libcurl.so.4. So rpm was listing the 0.9.8 .so files as dependencies. I removed the old curl rpm package and rebuilt it.
Upvotes: 1