rpm-software-management/createrepo_c

The binary fails to build with openssl 3.0.7

Felixoid opened this issue · 1 comments

Hello, the createrepo_c can't be built on arch linux with OpenSSL 3.0.7

Here's the command and the output I use:

$ cmake -B build  -DCMAKE_BUILD_TYPE=Release  -DCMAKE_C_FLAGS_RELEASE='-DNDEBUG'  -DCMAKE_INSTALL_PREFIX=/usr  -DCMAKE_INSTALL_LIBDIR=lib  -DENABLE_DRPM=ON  -DWITH_LIBMODULEMD=ON  -DWITH_ZCHUNK=ON  -Wno-dev && make -C build

-- The C compiler identification is GNU 12.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found BZip2: /usr/lib/libbz2.so (found version "1.0.8") 
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found
-- Found CURL: /usr/lib/libcurl.so (found version "7.86.0")  
-- Found LibXml2: /usr/lib/libxml2.so (found version "2.10.3") 
-- Found OpenSSL: /usr/lib/libcrypto.so (found version "3.0.7")  
-- Found ZLIB: /usr/lib/libz.so (found version "1.2.13") 
-- Checking for module 'glib-2.0'
--   Found glib-2.0, version 2.74.1
-- Checking for module 'gthread-2.0'
--   Found gthread-2.0, version 2.74.1
-- Checking for module 'liblzma'
--   Found liblzma, version 5.2.8
-- Checking for module 'sqlite3'
--   Found sqlite3, version 3.40.0
-- Checking for module 'rpm'
--   Found rpm, version 4.18.0
-- Checking for module 'libmagic'
--   Found libmagic, version 5.43
-- Checking for module 'drpm>=0.4.0'
--   Found drpm, version 0.5.1
-- Checking for module 'zck'
--   Found zck, version 1.2.3
-- Checking for module 'modulemd-2.0'
--   Found modulemd-2.0, version 2.14.0
Package version: 0.20.1
-- Checking for module 'bash-completion'
--   Found bash-completion, version 2.11
Bash completion directory: /usr/share/bash-completion/completions
-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.10.8", minimum required is "3") 
-- Found PythonLibs: /usr/lib/libpython3.10.so (found suitable version "3.10.8", minimum required is "3") 
-- Python install dir is /usr/lib/python3.10/site-packages
-- Found Doxygen: /usr/bin/doxygen (found version "1.9.5") found components: doxygen dot 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build
make: Entering directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
make[1]: Entering directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
make[2]: Entering directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
make[2]: Leaving directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
make[2]: Entering directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
[  1%] Building C object src/CMakeFiles/libcreaterepo_c.dir/checksum.c.o
[  2%] Building C object src/CMakeFiles/libcreaterepo_c.dir/compression_wrapper.c.o
[  4%] Building C object src/CMakeFiles/libcreaterepo_c.dir/createrepo_shared.c.o
[  5%] Building C object src/CMakeFiles/libcreaterepo_c.dir/deltarpms.c.o
[  7%] Building C object src/CMakeFiles/libcreaterepo_c.dir/dumper_thread.c.o
[  8%] Building C object src/CMakeFiles/libcreaterepo_c.dir/error.c.o
[ 10%] Building C object src/CMakeFiles/libcreaterepo_c.dir/helpers.c.o
[ 11%] Building C object src/CMakeFiles/libcreaterepo_c.dir/load_metadata.c.o
[ 13%] Building C object src/CMakeFiles/libcreaterepo_c.dir/locate_metadata.c.o
[ 14%] Building C object src/CMakeFiles/libcreaterepo_c.dir/misc.c.o
[ 16%] Building C object src/CMakeFiles/libcreaterepo_c.dir/modifyrepo_shared.c.o
[ 17%] Building C object src/CMakeFiles/libcreaterepo_c.dir/package.c.o
[ 19%] Building C object src/CMakeFiles/libcreaterepo_c.dir/parsehdr.c.o
[ 20%] Building C object src/CMakeFiles/libcreaterepo_c.dir/parsepkg.c.o
[ 22%] Building C object src/CMakeFiles/libcreaterepo_c.dir/repomd.c.o
[ 23%] Building C object src/CMakeFiles/libcreaterepo_c.dir/sqlite.c.o
[ 25%] Building C object src/CMakeFiles/libcreaterepo_c.dir/threads.c.o
[ 26%] Building C object src/CMakeFiles/libcreaterepo_c.dir/updateinfo.c.o
[ 27%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_dump.c.o
[ 29%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_dump_deltapackage.c.o
[ 30%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_dump_filelists.c.o
[ 32%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_dump_other.c.o
[ 33%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_dump_primary.c.o
[ 35%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_dump_repomd.c.o
[ 36%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_dump_updateinfo.c.o
[ 38%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_file.c.o
[ 39%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_parser.c.o
[ 41%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_parser_filelists.c.o
[ 42%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_parser_other.c.o
[ 44%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_parser_primary.c.o
[ 45%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_parser_repomd.c.o
[ 47%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_parser_updateinfo.c.o
[ 48%] Building C object src/CMakeFiles/libcreaterepo_c.dir/xml_parser_main_metadata_together.c.o
[ 50%] Building C object src/CMakeFiles/libcreaterepo_c.dir/koji.c.o
[ 51%] Linking C shared library libcreaterepo_c.so
make[2]: Leaving directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
[ 51%] Built target libcreaterepo_c
make[2]: Entering directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
make[2]: Leaving directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
make[2]: Entering directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
[ 52%] Building C object src/CMakeFiles/createrepo_c.dir/createrepo_c.c.o
/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/src/createrepo_c.c: In function ‘allowed_file’:
/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/src/createrepo_c.c:77:13: warning: ‘g_pattern_match’ is deprecated: Use 'g_pattern_spec_match' instead [-Wdeprecated-declarations]
   77 |             if (g_pattern_match((GPatternSpec *) element->data,
      |             ^~
In file included from /usr/include/glib-2.0/glib.h:67,
                 from /home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/src/createrepo_c.c:20:
/usr/include/glib-2.0/glib/gpattern.h:52:15: note: declared here
   52 | gboolean      g_pattern_match          (GPatternSpec *pspec,
      |               ^~~~~~~~~~~~~~~
[ 54%] Building C object src/CMakeFiles/createrepo_c.dir/cmd_parser.c.o
[ 55%] Linking C executable createrepo_c
/usr/bin/ld: warning: libcrypto.so.1.1, needed by /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA512_Final@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA512_Init@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA1_Init@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libdrpm.so: undefined reference to `MD5_Final@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA512_Update@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA1_Update@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libdrpm.so: undefined reference to `MD5_Init@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libdrpm.so: undefined reference to `MD5_Update@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA256_Final@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA256_Init@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA1_Final@OPENSSL_1_1_0'
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/../../../../lib/libzck.so: undefined reference to `SHA256_Update@OPENSSL_1_1_0'
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/createrepo_c.dir/build.make:120: src/createrepo_c] Error 1
make[2]: Leaving directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
make[1]: *** [CMakeFiles/Makefile2:301: src/CMakeFiles/createrepo_c.dir/all] Error 2
make[1]: Leaving directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'
make: *** [Makefile:146: all] Error 2
make: Leaving directory '/home/felixoid/.cache/yay/createrepo_c/src/createrepo_c-master/build'

Ok, sorry for disturbing you. The reason is in the libzck.so and libdrpm.so linked vs the old version ¯\_(ツ)_/¯