Solved ld-elf.so.1: Shared object not found?

Doing in /usr/ports: git pull gives me
ld-elf.so.1: Shared object "libssl.so.11" not found, required by "libcurl.so.4"

ll /usr/local/lib | grep libssl.so
% lrwxr-xr-x 1 root wheel 12 Mrz 13 22:15 libssl.so -> libssl.so.12
% -rwxr-xr-x 1 root wheel 686624 Mrz 13 22:16 libssl.so.12

I had updated openssl-1.1.1t,1 to openssl-3.0.13_1,1 with the ports and set
pkg set -o security/openssl-1.1.1t,1:security/openssl-3.0.13_1,1

pkg shlib libssl.so.12
% libssl.so.12 is provided by the following packages:
% openssl-3.0.13_1,1

libssl.so.12 is present. But why search ld-elf.so.1 for the old one?

ldconfig -r | grep libssl.so.12
375:-lssl.12 => /usr/local/lib/libssl.so.12

How can that be fixed?
 
It was right there in the error message:
ld-elf.so.1: Shared object "libssl.so.11" not found, required by "libcurl.so.4"
curl was built against an older version of OpenSSL so needed to be rebuilt against the newer version on your system.

When FreeBSD was loading git, it saw that git needed curl and tries to load that. It sees that curl needs the library libssl.so.11 and oops that’s not found so it reports that.

When you rebuilt curl the dependency changed to libssl.so.12 which IS on your system so the load succeeds.
 
Back
Top