[tarantool-patches] Re: [PATCH v2] build: FreeBSD packages installation
Alexander Turenko
alexander.turenko at tarantool.org
Thu Sep 19 04:03:21 MSK 2019
LGTM.
Pushed to master, 2.2, 2.1 and 1.10.
I'll follow it up with a patch that fixes tarantool build when a system
has OpenSSL installed from ports / pkg (in /usr/local).
WBR, Alexander Turenko.
On Tue, Sep 17, 2019 at 03:42:43PM +0300, Alexander V. Tikhonov wrote:
> 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
> ---
>
> Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-4490-freebsd-libcurl
> Issue: https://github.com/tarantool/tarantool/issues/4490
>
> .travis.mk | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/.travis.mk b/.travis.mk
> index a816d17db..42969ff56 100644
> --- a/.travis.mk
> +++ b/.travis.mk
> @@ -163,18 +163,16 @@ test_osx: deps_osx test_osx_no_deps
> ###########
>
> deps_freebsd:
> - sudo pkg install -y git cmake gmake gcc coreutils \
> - readline ncurses libyaml openssl libunwind icu \
> - python27 py27-pip py27-setuptools py27-daemon \
> - py27-yaml py27-argparse py27-six py27-gevent \
> - gdb bash autoconf automake libtool
> + sudo pkg install -y git cmake gmake icu libiconv \
> + python27 py27-yaml py27-six py27-gevent \
> + autoconf automake libtool
>
> build_freebsd:
> cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_WERROR=ON ${CMAKE_EXTRA_PARAMS}
> gmake -j
>
> test_freebsd_no_deps: build_freebsd
> - cd test && /usr/bin/python test-run.py --force $(TEST_RUN_EXTRA_PARAMS)
> + cd test && python2.7 test-run.py --force $(TEST_RUN_EXTRA_PARAMS)
>
> test_freebsd: deps_freebsd test_freebsd_no_deps
>
> --
> 2.17.1
>
More information about the Tarantool-patches
mailing list