Uploaded image for project: 'MariaDB Foundation Development'
  1. MariaDB Foundation Development
  2. MDBF-935

Bintars - missing functions in libncurses.a and duplicate lib/galera/libgalera_smm.so

Details

    Description

      As tests performed by cvicentiu revealed in:
      https://jira.mariadb.org/browse/MDBF-883 and
      https://jira.mariadb.org/browse/MDBF-866

      we are facing the following issues that shall be addressed for the current release.

      The first one is related to the extra dependency of mariadb client

      ERROR: We have extra deps for bin/mariadb! {'libtinfo.so.6'}
      

      This is caused by a couple missing functions in the static library libncurses.a in both centos-7-bintar and almalinux-8-bintar.

      Although libtinfo.a is present in the CMAKE_LIBRARY_PATH, CMAKE / readline.cmake cannot detect it and it actually looks for the shared tinfo library
      https://buildbot.mariadb.org/#/builders/857/builds/1/steps/5/logs/stdio

      From the logs:

      -- Found Curses: /scripts/local/lib/libcurses.a  
      -- Looking for tputs in /scripts/local/lib/libcurses.a
      -- Looking for tputs in /scripts/local/lib/libcurses.a - not found
      -- Looking for tputs in tinfo
      -- Looking for tputs in tinfo - found
      -- Looking for setupterm in tinfo
      -- Looking for setupterm in tinfo - found
      -- Looking for vidattr in tinfo
      -- Looking for vidattr in tinfo - not found
      -- Looking for include files curses.h, term.h
      -- Looking for include files curses.h, term.h - found
      

      For CMAKE to succesfully find tputs, setupterm and vidattr in libncurses.a
      the .src.rpm of NCURSES should be altered to remove the following configuration parameters and then compile again.

      --with-terminfo-dirs=%{_sysconfdir}/terminfo:%{_datadir}/terminfo \\\
      --with-termlib=tinfo \\\
      --disable-wattr-macros
      

      The second problem is related to the duplicate libgalera_smm.so in the final binary tarball.
      This is caused by specifying CMAKE -DEXTRA_FILES flag which was set to include the library in both paths i.e.:

      -DEXTRA_FILES="${WSREP_PROVIDER}=lib;${WSREP_PROVIDER}=lib/galera;"
      

      Attachments

        Issue Links

          Activity

            People

              rvarzaru Varzaru Razvan-Liviu
              rvarzaru Varzaru Razvan-Liviu
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 1d Original Estimate - 1d
                  1d
                  Remaining:
                  Remaining Estimate - 0d
                  0d
                  Logged:
                  Time Spent - 1.5d
                  1.5d