Netdata: Compilation error when two versions of OpenSSL exist

Created on 8 Oct 2019  路  1Comment  路  Source: netdata/netdata

/tmp/cci8PHJ5.ltrans3.ltrans.o: In function `security_openssl_library':
/Distrib/project/netdata/netdata-kickstart-ISnZWx/netdata-v1.17.1/libnetdata/socket/security.c:46: undefined reference to `OPENSSL_init_ssl'
/tmp/cci8PHJ5.ltrans2.ltrans.o: In function `security_process_accept':
/Distrib/project/netdata/netdata-kickstart-ISnZWx/netdata-v1.17.1/libnetdata/socket/security.c:265: undefined reference to `SSL_is_init_finished'
/tmp/cci8PHJ5.ltrans2.ltrans.o: In function `security_initialize_openssl_client.lto_priv.210':
/Distrib/project/netdata/netdata-kickstart-ISnZWx/netdata-v1.17.1/libnetdata/socket/security.c:92: undefined reference to `TLS_client_method'
/tmp/cci8PHJ5.ltrans13.ltrans.o: In function `security_initialize_openssl_server':
/Distrib/project/netdata/netdata-kickstart-ISnZWx/netdata-v1.17.1/libnetdata/socket/security.c:123: undefined reference to `TLS_server_method'
collect2: error: ld returned 1 exit status

I've a compilation error, because the script kickstart ( configure script) take the wrong version of the openssl :

find /usr/ -name "libcrypto.pc"
/usr/lib/arm-linux-gnueabihf/pkgconfig/libcrypto.pc
/usr/local/ssl/lib/pkgconfig/libcrypto.pc
/usr/local/lib/pkgconfig/libcrypto.pc

root@MICKA:/project/netdata/netdata-kickstart-ISnZWx/netdata-v1.17.1# cat /usr/local/lib/pkgconfig/libcrypto.pc
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
enginesdir=${libdir}/engines-1.1

Name: OpenSSL-libcrypto
Description: OpenSSL cryptography library
Version: 1.1.1b
Libs: -L${libdir} -lcrypto
Libs.private: -ldl -pthread
Cflags: -I${includedir}

root@MICKA:/project/netdata/netdata-kickstart-ISnZWx/netdata-v1.17.1# cat /usr/lib/arm-linux-gnueabihf/pkgconfig/libcrypto.pc
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib/arm-linux-gnueabihf
includedir=${prefix}/include

Name: OpenSSL-libcrypto
Description: OpenSSL cryptography library
Version: 1.0.1t
Requires:
Libs: -L${libdir} -lcrypto
Libs.private: -ldl
Cflags: -I${includedir}

And when i tried to do ./configure

I got in the makefile :

LIBCRYPTO_CFLAGS = -I/usr/local/include
LIBCRYPTO_LIBS = -L/usr/local/lib -lcrypto

which is from the file :

strace -e open pkg-config --libs libcrypto
=>
/usr/local/lib/pkgconfig/libcrypto.pc

looks like that there is no filter in the pkg-config command ? It would be good to add a filter ?

arebuild arepackaging bug

>All comments

Closing this in favor of #8306. Actually fixing this is somewhat complicated to do, so we're just going to document we don't support this for the time being and be done with it.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

dugajean picture dugajean  路  3Comments

BecomeBamboo picture BecomeBamboo  路  3Comments

jeremyjpj0916 picture jeremyjpj0916  路  3Comments

eXcalibre picture eXcalibre  路  3Comments

gino picture gino  路  3Comments