Re: Libpq linked statically linked to OpenSSL/LibreSSL
От | Andres Freund |
---|---|
Тема | Re: Libpq linked statically linked to OpenSSL/LibreSSL |
Дата | |
Msg-id | 20221206180100.yoluppdnsaivckwi@awork3.anarazel.de обсуждение исходный текст |
Ответ на | Re: Libpq linked statically linked to OpenSSL/LibreSSL (Marco Bambini <marco@creolabs.com>) |
Ответы |
Re: Libpq linked statically linked to OpenSSL/LibreSSL
Re: Libpq linked statically linked to OpenSSL/LibreSSL |
Список | pgsql-interfaces |
Hi, On 2022-12-06 11:05:49 +0100, Marco Bambini wrote: > I made some progresses, especially in understanding where the issue can be. > > I started with a fresh postgresql-15.1 source code installation: > # ./configure --with-openssl --without-readline > > I then modified the Makefile.global in the src directory by replacing the occurrences of -lssl and -lcrypto with: > /root/rothsoft/libressl-3.6.1/ssl/.libs/libssl.a /root/rothsoft/libressl-3.6.1/crypto/.libs/libcrypto.a > in the LIBS entry. I think this is completely the wrong path. You should add libressl's include and library directories to --with-includes=, --with-libraries=. > Please notice all the U entries in the crypto/ssl functions, so it looks like that they are NOT statically linked insidethe libpq.so shared library, even if I replaced the LIBS in the Makefile. If there's also a shared version of libressl, you possibly would need to specify that you'd want to link statically. Something like -Wl,-Bstatic -lssl -lcrypto -Wl,-Bdynamic But I suspect that you're better of linking dynamically, specifying --with-includes= --with-libraries= should provide a path towards that. It's possible that you should add -Wl,-rpath,/path/to/libressl/lib to the LDFLAGS, so that the dynamic version can be found at runtime. Greetings, Andres Freund
В списке pgsql-interfaces по дате отправления: