postgresql - Configuring Postgres with OpenSSL and '--with-openssl' option -


i tried installing postgres openssl doing

./configure --with-openssl

but got error saying

configure: error: header file openssl/ssl.h required openssl

however, have openssl installed. if run openssl version output

openssl 0.9.8zh 14 jan 2016

i came across this solution , tried doing

./configure --with-includes=/usr/local/ssl/include , installed without problems.

can explain whats going on , difference between 2 configure versions?

can explain whats going on , difference between 2 configure versions.

you can run ./configure --help synopsis of arguments:

$ ./configure --help | egrep -i '(ssl|includes)'   --with-includes=dirs    additional header files in dirs   --with-openssl          build openssl support 

./configure --with-openssl

this enables openssl in postgres. enables checking in autoconf, probing symbols crypto_new_ex_data , ssl_library_init.

it looks configure defines #define use_openssl 1 activates openssl code paths:

$ grep -ir openssl * | grep '.c' ... src/backend/postmaster/fork_process.c:#ifdef use_openssl src/backend/postmaster/fork_process.c:#ifdef use_openssl src/backend/utils/init/postinit.c:#ifdef use_openssl src/backend/utils/init/postinit.c:#ifdef use_openssl src/include/libpq/libpq-be.h:#ifdef use_openssl src/include/libpq/libpq-be.h:#ifdef use_openssl ... 

./configure --with-includes=/usr/local/ssl/include

this did not enable openssl. added path headers not used during compilation. use lddon linux , otool -l on os x see if there openssl dependencies.


you should use ./configure --with-openssl --with-includes=/usr/local/ssl/include --with-libraries=/usr/local/ssl/lib. should add cflags="-wl,-rpath=/usr/local/ssl/lib ensure proper runtime linking.

also see postgres issue 14308: postgres 9.5.4 not configure against openssl 1.1.0


Comments