Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-23423

ColumnStore fails to build on Ubuntu 20.10 due to missing readline

    XMLWordPrintable

    Details

      Description

      While building current 10.5 git head I noticed this:

      [ 83%] Building CXX object sql/CMakeFiles/sql.dir/sp_cache.cc.o
      cd "/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/builddir/sql" && /usr/bin/x86_64-linux-gnu-g++  -DDBUG_TRACE -DHAVE_CONFIG_H -DHAVE_EVENT_SCHEDULER -DHAVE_OPENSSL -DHAVE_POOL_OF_THREADS -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I"/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/wsrep-lib/include" -I"/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/wsrep-lib/wsrep-API/v26" -I"/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/builddir/include" -I"/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/include" -I"/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/sql" -I"/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/builddir/sql" -I"/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/tpool"  -g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -fstack-protector --param=ssp-buffer-size=4 -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -fno-omit-frame-pointer -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu++11 -o CMakeFiles/sql.dir/sp_cache.cc.o -c "/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/sql/sp_cache.cc"
      In file included from /usr/include/string.h:495,
                       from /usr/include/c++/10/cstring:42,
                       from /usr/include/boost/system/error_code.hpp:20,
                       from /usr/include/boost/filesystem/path_traits.hpp:22,
                       from /usr/include/boost/filesystem/path.hpp:26,
                       from /usr/include/boost/filesystem.hpp:16,
                       from /<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/storage/columnstore/columnstore/procmgr/main.cpp:29:
      In function ‘char* strncpy(char*, const char*, size_t)’,
          inlined from ‘void pingDeviceThread()’ at /<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/storage/columnstore/columnstore/procmgr/main.cpp:1387:24:
      /usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 16 equals destination size [-Wstringop-truncation]
        106 |   return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
            |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      [ 83%] Linking CXX executable ../../bin/columnstoreDBWrite
      cd "/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/builddir/storage/columnstore/columnstore/oamapps/columnstoreDB" && /usr/bin/cmake -E cmake_link_script CMakeFiles/columnstoreDBWrite.dir/link.txt --verbose=1
      /usr/bin/x86_64-linux-gnu-g++  -g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -fstack-protector --param=ssp-buffer-size=4 -DCOLUMNSTORE_MATURITY=MariaDB_PLUGIN_MATURITY_BETA -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -fno-omit-frame-pointer -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings  -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,-z,relro,-z,now CMakeFiles/columnstoreDBWrite.dir/columnstoreDB.cpp.o  -o ../../bin/columnstoreDBWrite  -Wl,-rpath,"/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/builddir/libmariadb/libmariadb:/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/builddir/storage/columnstore/columnstore/lib:" -lpthread -Wl,--no-as-needed -Wl,--add-needed -lreadline -lncurses ../../../../../libmariadb/libmariadb/libmariadb.so.3 ../../lib/libjoblist.so ../../lib/libexecplan.so ../../lib/libwindowfunction.so ../../lib/libjoiner.so ../../lib/librowgroup.so ../../lib/libfuncexp.so ../../lib/libudfsdk.so ../../lib/libregr.so ../../lib/libdataconvert.so ../../lib/libcommon.so ../../lib/libcompress.so ../../lib/libquerystats.so ../../lib/libquerytele.so ../../lib/libthrift.so ../../lib/libthreadpool.so ../../lib/libbrm.so ../../lib/libidbdatafile.so ../../lib/libcacheutils.so ../../lib/librwlock.so ../../lib/liboamcpp.so ../../lib/libalarmmanager.so ../../lib/libmessageqcpp.so ../../lib/libloggingcpp.so ../../lib/libconfigcpp.so ../../obj/libidbboot.a /usr/lib/x86_64-linux-gnu/libboost_system.so.1.71.0 /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.71.0 /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.71.0 /usr/lib/x86_64-linux-gnu/libboost_regex.so.1.71.0 /usr/lib/x86_64-linux-gnu/libboost_date_time.so.1.71.0 /usr/lib/x86_64-linux-gnu/libboost_chrono.so.1.71.0 /usr/lib/x86_64-linux-gnu/libboost_atomic.so.1.71.0 -lxml2 -lpthread -lrt ../../lib/liblibmysql_client.so ../../../../../dbug/libdbug.a ../../../../../strings/libstrings.a ../../../../../mysys/libmysys.a ../../../../../dbug/libdbug.a ../../../../../strings/libstrings.a ../../../../../mysys/libmysys.a -lz -lm -ldl -lsnappy -lpthread 
      /usr/bin/ld: cannot find -lreadline
      collect2: error: ld returned 1 exit status
      make[4]: *** [storage/columnstore/columnstore/oamapps/columnstoreDB/CMakeFiles/columnstoreDBWrite.dir/build.make:126: storage/columnstore/columnstore/bin/columnstoreDBWrite] Error 1
      make[4]: Leaving directory '/<<BUILDDIR>>/mariadb-10.5-10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate/builddir'
      make[3]: *** [CMakeFiles/Makefile2:8810: storage/columnstore/columnstore/oamapps/columnstoreDB/CMakeFiles/columnstoreDBWrite.dir/all] Error 2
      make[3]: *** Waiting for unfinished jobs....
      

      At https://launchpadlibrarian.net/491658876/buildlog_ubuntu-groovy-amd64.mariadb-10.5_1%3A10.5.5+maria~sid~ubuntu20.10.1~1596444859.778e8972e21.ok.10.5.logrotate_BUILDING.txt.gz

      Builds on other archs are OK: https://launchpad.net/~mysql-ubuntu/+archive/ubuntu/mariadb-10.5/+builds?build_text=&build_state=all

      Potentially a regression from https://github.com/MariaDB/server/commit/2c5831b2c5348edf19a4c3c91ebed21c6e8412b9

      The commit message "DEB package doesn't need expect and libreadline as dependencies" is void of the motivation why it does not need.

      For expect it is not fully accurate, and Lintian complains:

      E: mariadb-plugin-columnstore: missing-dep-for-interpreter expect => expect (usr/bin/mcs_module_installer.sh) #!/usr/bin/expect
      E: mariadb-plugin-columnstore: missing-dep-for-interpreter expect => expect (usr/bin/remote_command.sh) #!/usr/bin/expect
      E: mariadb-plugin-columnstore: missing-dep-for-interpreter expect => expect (usr/bin/remote_command_verify.sh) #!/usr/bin/expect
      E: mariadb-plugin-columnstore: missing-dep-for-interpreter expect => expect (usr/bin/remote_scp_get.sh) #!/usr/bin/expect
      E: mariadb-plugin-columnstore: missing-dep-for-interpreter expect => expect (usr/bin/remote_scp_put.sh) #!/usr/bin/expect
      E: mariadb-plugin-columnstore: missing-dep-for-interpreter expect => expect (usr/bin/rsync.sh) #!/usr/bin/expect

      This can be ignored but removal of libreadline not.

        Attachments

          Activity

            People

            Assignee:
            serg Sergei Golubchik
            Reporter:
            otto Otto Kekäläinen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: