From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp63.i.mail.ru (smtp63.i.mail.ru [217.69.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 38A3F4696C3 for ; Thu, 2 Apr 2020 14:24:07 +0300 (MSK) Date: Thu, 2 Apr 2020 14:24:06 +0300 From: Kirill Yukhin Message-ID: <20200402112406.aqpnzmitbti7qnbf@tarantool.org> References: <550dd2918764269f001232814fb36b20409fcf2a.1575982467.git.avtikhon@tarantool.org> <20200402104054.rzkgsvwwigiqzrua@tarantool.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20200402104054.rzkgsvwwigiqzrua@tarantool.org> Subject: Re: [Tarantool-patches] [PATCH v2] static build: create new build w/o dockerfile List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Alexander V. Tikhonov" Cc: tarantool-patches@dev.tarantool.org Hello, On 02 апр 13:40, Kirill Yukhin wrote: > Hello, > > On 10 дек 16:11, Alexander V. Tikhonov wrote: > > Fixed static build with '-DBUILD_STATIC=ON' option: > > > > - installed liblzma-dev library for libunwind static, due to found that > > static libunwind library uses undefined lzma functions: > > nm -a /usr/lib/x86_64-linux-gnu/libunwind-x86_64.a | grep lzma > > U lzma_index_buffer_decode > > U lzma_index_end > > U lzma_index_size > > U lzma_index_uncompressed_size > > U lzma_stream_buffer_decode > > U lzma_stream_footer_decode > > while dynamic libunwind correctly sees liblzma installed: > > ldd /usr/lib/x86_64-linux-gnu/libunwind-x86_64.so | grep lzma > > liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f8fd1c23000) > > so to fix it the static library of lzma was needed. > > > > - added lzma library to unwind library for Tarantool build at file: > > cmake/compiler.cmake > > due to fail: > > /usr/lib/x86_64-linux-gnu/libunwind-x86_64.a(elf64.o): > > In function `xz_uncompressed_size': > > ./src/elfxx.c:194: undefined reference to `lzma_stream_footer_decode' > > ./src/elfxx.c:201: undefined reference to `lzma_index_buffer_decode' > > ./src/elfxx.c:205: undefined reference to `lzma_index_size' > > ./src/elfxx.c:210: undefined reference to `lzma_index_end' > > ./src/elfxx.c:207: undefined reference to `lzma_index_uncompressed_size' > > ./src/elfxx.c:210: undefined reference to `lzma_index_end' > > /usr/lib/x86_64-linux-gnu/libunwind-x86_64.a(elf64.o): > > In function `_Uelf64_extract_minidebuginfo': > > ./src/elfxx.c:278: undefined reference to `lzma_stream_buffer_decode' > > collect2: error: ld returned 1 exit status > > test/unit/CMakeFiles/luaL_iterator.test.dir/build.make:134: > > recipe for target 'test/unit/luaL_iterator.test' failed > > make[2]: *** [test/unit/luaL_iterator.test] Error 1 > > > > - added dl library to gomp library for test/unit tests > > binaries builds at file: > > cmake/BuildMisc.cmake > > due to fail: > > /usr/lib/gcc/x86_64-linux-gnu/7/libgomp.a(target.o):(.text+0x34d): > > more undefined references to `dlsym' follow > > /usr/lib/gcc/x86_64-linux-gnu/7/libgomp.a(target.o): In function > > `gomp_target_init': > > (.text+0x9cc): undefined reference to `dlerror' > > collect2: error: ld returned 1 exit status > > > > - added dl library to icu library for test/unit tests > > binaries builds at file: > > cmake/FindICU.cmake > > due to fail: > > /usr/x86_64-linux-gnu/libicuuc.a(putil.ao): > > In function `uprv_dl_open_60': > > (.text+0x1ce2): undefined reference to `dlopen' > > /usr/x86_64-linux-gnu/libicuuc.a(putil.ao): > > In function `uprv_dlsym_func_60': > > (.text+0x1d3d): undefined reference to `dlsym' > > /usr/x86_64-linux-gnu/libicuuc.a(putil.ao): > > In function `uprv_dl_close_60': > > (.text+0x1d21): undefined reference to `dlclose' > > collect2: error: ld returned 1 exit status > > > > Added static build to gitlab-ci in release check criteria named > > as static_build job. Previously named static_build job renamed to > > static_docker_build, due to it checks the build at Dockerfile. > > > > Also moved static build make targets from .gitlab.mk to .travis.mk > > to store it in common place with the other test/build make targets. > > Moved environement from .gitlab-ci.yml file into make targets to > > make this targets true building in static w/o additional setup. > > > > Close #4551 > > --- > > > > Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-4551-static-build-full-ci > > Issue: https://github.com/tarantool/tarantool/issues/4551 > > I've checked your patch into 2.3 and master. Also backported to 2.2 and 1.10. -- Regards, Kirill Yukhin