Kalanidhi Kalanidhi - 19 days ago 25
Linux Question

Apache 2.4.23 undefined reference to CRYPTO_malloc_init?

Hi I am trying to install Apache 2.4.23 with openssl version of 1.1.0c , while execute

make
command I am getting following error,
I have searched many website but I couldn't see any relevant answer. I have attached error also .Could you please solve my problem?

./configure --prefix=/usr/local/apache2 --with-included-apr --enable-so --with-ssl=/usr/local/openssl --enable-ssl=shared --with-pcre=/usr/local/pcre/

make

ab.o: In function main': /usr/src/httpd-2.4.23/support/ab.c:2417: undefined reference to `CRYPTO_malloc_init'
collect2: error: ld returned 1 exit status
Makefile:73: recipe for target 'ab' failed
make[2]: \*** [ab] Error 1
make[2]: Leaving directory '/usr/src/httpd-2.4.23/support' /usr/src/httpd-2.4.23/build/rules.mk:75: recipe for target 'all-recursive' failed
make[1]: \*** [all-recursive] Error 1
make[1]: Leaving directory '/usr/src/httpd-2.4.23/support' /usr/src/httpd-2.4.23/build/rules.mk:75: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1


Thanks in Advance

jww jww
Answer

Apache 2.4.23 undefined reference to CRYPTO_malloc_init?

OpenSSL 1.0.2 and earlier provided CRYPTO_malloc_init:

openssl-1.0.2h$ grep -R CRYPTO_malloc_init *
apps/apps.h:                        do { do_pipe_sig(); CRYPTO_malloc_init(); \
apps/apps.h:                        do { do_pipe_sig(); CRYPTO_malloc_init(); \
crypto/crypto.h:# define CRYPTO_malloc_init()    CRYPTO_set_mem_functions(\
crypto/dh/dhtest.c:    CRYPTO_malloc_init();
crypto/ecdh/ecdhtest.c:    CRYPTO_malloc_init();
...

OpenSSL 1.1.0 and later do not appear to provide CRYPTO_malloc_init:

openssl-1.1.0b$ grep -R CRYPTO_malloc_init *
openssl-1.1.0b$

Also see Apache Issue 60061 - OpenSSL 1.1.0 support.

Comments