From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id 7A4212E834 for ; Mon, 10 Jun 2019 03:48:56 -0400 (EDT) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yQf585izG5Wm for ; Mon, 10 Jun 2019 03:48:56 -0400 (EDT) Received: from smtp43.i.mail.ru (smtp43.i.mail.ru [94.100.177.103]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id B8E5B2E7F5 for ; Mon, 10 Jun 2019 03:48:55 -0400 (EDT) Date: Mon, 10 Jun 2019 10:48:27 +0300 From: Alexander Turenko Subject: [tarantool-patches] Re: [PATCH v1] Fix static build Message-ID: <20190610074826.rjar6qchwn4ks3mi@tkn_work_nb> References: <3a25f57555ed97795bbaa34c69a6faf85aeb8bd1.1559740773.git.avtikhon@tarantool.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <3a25f57555ed97795bbaa34c69a6faf85aeb8bd1.1559740773.git.avtikhon@tarantool.org> Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-Help: List-Unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-Subscribe: List-Owner: List-post: List-Archive: To: "Alexander V. Tikhonov" Cc: tarantool-patches@freelists.org, Kirill Yukhin Thanks! Using ${CMAKE_DL_LIBS} here is the right thing, because, say, FreeBSD 10 does not contain libdl. The patch looks good for me. Kirill, please proceed. I would push it down to 1.10. WBR, Alexander Turenko. On Fri, Jun 07, 2019 at 06:55:37AM +0300, Alexander V. Tikhonov wrote: > Added to cmake environment CMAKE_DL_LIBS (The name of the library > that has dlopen and dlclose in it, usually -ldl) to openssl build > to add DL library, to fix the following fails: > > Linking CXX executable crypto.test > /usr/local/lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_globallookup': > dso_dlfcn.c:(.text+0x11): undefined reference to `dlopen' > dso_dlfcn.c:(.text+0x24): undefined reference to `dlsym' > dso_dlfcn.c:(.text+0x2f): undefined reference to `dlclose' > /usr/local/lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_bind_func': > dso_dlfcn.c:(.text+0x334): undefined reference to `dlsym' > dso_dlfcn.c:(.text+0x3f2): undefined reference to `dlerror' > /usr/local/lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_load': > dso_dlfcn.c:(.text+0x459): undefined reference to `dlopen' > dso_dlfcn.c:(.text+0x4c9): undefined reference to `dlclose' > dso_dlfcn.c:(.text+0x502): undefined reference to `dlerror' > /usr/local/lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_pathbyaddr': > dso_dlfcn.c:(.text+0x5a1): undefined reference to `dladdr' > dso_dlfcn.c:(.text+0x601): undefined reference to `dlerror' > /usr/local/lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_unload': > dso_dlfcn.c:(.text+0x662): undefined reference to `dlclose' > collect2: error: ld returned 1 exit status > make[2]: *** [test/unit/crypto.test] Error 1 > make[1]: *** [test/unit/CMakeFiles/crypto.test.dir/all] Error 2 > > Closes #4245 > --- > > Github: https://github.com/tarantool/tarantool/compare/avtikhon/gh-4245-static-build > Issue: https://github.com/tarantool/tarantool/issues/4245 > > cmake/FindOpenSSL.cmake | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/cmake/FindOpenSSL.cmake b/cmake/FindOpenSSL.cmake > index 8cd22cc8d..f3ee1de24 100644 > --- a/cmake/FindOpenSSL.cmake > +++ b/cmake/FindOpenSSL.cmake > @@ -177,7 +177,7 @@ if(OPENSSL_INCLUDE_DIR AND EXISTS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h") > endif () > endif () > > -set(OPENSSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_CRYPTO_LIBRARY} ) > +set(OPENSSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_CRYPTO_LIBRARY} ${CMAKE_DL_LIBS}) > > foreach(_comp IN LISTS OpenSSL_FIND_COMPONENTS) > if(_comp STREQUAL "Crypto") > -- > 2.17.1 >