Skip to content
Snippets Groups Projects
  • Alexander V. Tikhonov's avatar
    1f2338bd
    build: FreeBSD packages installation · 1f2338bd
    Alexander V. Tikhonov authored
    Found that the curl failed to build on FreeBSD with errors:
    gmake[2]: Entering directory '/home/vagrant/tarantool/third_party/curl/src'
      CCLD     curl
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSLv23_client_method'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `CONF_modules_free'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `ERR_free_strings'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `sk_value'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `ENGINE_cleanup'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSL_library_init'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `EVP_MD_CTX_destroy'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `sk_pop_free'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSLeay'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSL_get_ex_new_index'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `OPENSSL_add_all_algorithms_noconf'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSL_COMP_free_compression_methods'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `EVP_MD_CTX_create'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `EVP_cleanup'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `sk_num'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `sk_pop'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSL_load_error_strings'
    collect2: error: ld returned 1 exit status
    gmake[2]: *** [Makefile:921: curl] Error 1
    
    Found root cause of the issue at the `./configure <...>` output:
     | checking for OpenSSL headers version... 1.0.2 - 0x1000214fL
     | checking for OpenSSL library version... 1.1.1
     | configure: WARNING: OpenSSL headers and library versions do not match.
    It is seen that the Tarantool bootstrap installed pkg 'openssl'
    of the version '1.0.2', while the currently default FreeBSD 'openssl'
    version was '1.1.1'.
    
    Anyway we don't need any special openssl version installed against
    default one, so the fix is just to remove the openssl package from
    bootstrap installation.
    Also found that some installing packages are not needed too,
    removed it from FreeBSD bootstrap.
    
    Additionally added libiconv library into bootstrap which is needed
    as workaround to avoid of the issue described in:
    	https://github.com/tarantool/tarantool/issues/3791
    
    Closed #4490
    build: FreeBSD packages installation
    Alexander V. Tikhonov authored
    Found that the curl failed to build on FreeBSD with errors:
    gmake[2]: Entering directory '/home/vagrant/tarantool/third_party/curl/src'
      CCLD     curl
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSLv23_client_method'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `CONF_modules_free'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `ERR_free_strings'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `sk_value'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `ENGINE_cleanup'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSL_library_init'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `EVP_MD_CTX_destroy'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `sk_pop_free'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSLeay'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSL_get_ex_new_index'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `OPENSSL_add_all_algorithms_noconf'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSL_COMP_free_compression_methods'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `EVP_MD_CTX_create'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `EVP_cleanup'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `sk_num'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `sk_pop'
    /usr/local/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `SSL_load_error_strings'
    collect2: error: ld returned 1 exit status
    gmake[2]: *** [Makefile:921: curl] Error 1
    
    Found root cause of the issue at the `./configure <...>` output:
     | checking for OpenSSL headers version... 1.0.2 - 0x1000214fL
     | checking for OpenSSL library version... 1.1.1
     | configure: WARNING: OpenSSL headers and library versions do not match.
    It is seen that the Tarantool bootstrap installed pkg 'openssl'
    of the version '1.0.2', while the currently default FreeBSD 'openssl'
    version was '1.1.1'.
    
    Anyway we don't need any special openssl version installed against
    default one, so the fix is just to remove the openssl package from
    bootstrap installation.
    Also found that some installing packages are not needed too,
    removed it from FreeBSD bootstrap.
    
    Additionally added libiconv library into bootstrap which is needed
    as workaround to avoid of the issue described in:
    	https://github.com/tarantool/tarantool/issues/3791
    
    Closed #4490