<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <style type="text/css">body p { margin-bottom: 0cm; margin-top: 0pt; } </style>
  </head>
  <body bidimailui-charset-is-forced="true">
    <br>
    <div class="moz-cite-prefix">On 11/12/19 9:34 AM, Ole Holm Nielsen
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:379c2722-2e22-ba14-8612-73877718d23f@fysik.dtu.dk">On
      11/11/19 10:14 PM, Daniel Letai wrote:
      <br>
      <blockquote type="cite">Why would you need galera-4 as a build
        require?
        <br>
      </blockquote>
      <br>
      This is the MariaDB recommendation in
      <a class="moz-txt-link-freetext" href="https://mariadb.com/kb/en/library/yum/">https://mariadb.com/kb/en/library/yum/</a>, see the section
      "Installing MariaDB Packages with YUM".  I have no clue why this
      would be needed.
      <br>
    </blockquote>
    <p>Yes, it's required for mariadb multimaster cluster. This has
      nothing to do with the mariadb api required for linking against
      mariadb libs.</p>
    <p><br>
    </p>
    <p>You don't even need the mariadb-server pkg for build purposes -
      it's only required for deployment of slurmdbd.</p>
    <p>On a build machine, you should only require the client section:
<a class="moz-txt-link-freetext" href="https://mariadb.com/kb/en/library/yum/#installing-mariadb-clients-and-client-libraries-with-yum">https://mariadb.com/kb/en/library/yum/#installing-mariadb-clients-and-client-libraries-with-yum</a>,
      as well as the devel pkg.<br>
    </p>
    <blockquote type="cite"
      cite="mid:379c2722-2e22-ba14-8612-73877718d23f@fysik.dtu.dk">
      <br>
      /Ole
      <br>
      <br>
      <br>
      <blockquote type="cite">If it's required by any of the mariadb
        packages, it'll get pulled automatically. If not, you don't need
        it on the build system.
        <br>
        <br>
        <br>
        On 11/11/19 10:56 PM, Ole Holm Nielsen wrote:
        <br>
        <blockquote type="cite">Hi William,
          <br>
          <br>
          Interesting experiences with MariaDB 10.4!  I tried to collect
          the instructions from the MariaDB page, but I'm unsure about
          how to get the galera-4 RPM.
          <br>
          <br>
          Could you kindly review and correct my updated instructions?
          <br>
<a class="moz-txt-link-freetext" href="https://wiki.fysik.dtu.dk/niflheim/Slurm_installation#build-slurm-rpms">https://wiki.fysik.dtu.dk/niflheim/Slurm_installation#build-slurm-rpms</a>
          <br>
          <br>
          That said, what are the main reasons for installing MariaDB 10
          in stead of the 5.5 delivered by RedHat?  I'm not sure how
          well SchedMD has tested MariaDB 10 with Slurm?
          <br>
          <br>
          /Ole
          <br>
          <br>
          <br>
          On 11-11-2019 21:23, William Brown wrote:
          <br>
          <blockquote type="cite">I have in fact found the answer by
            looking harder.
            <br>
            <br>
            The config.log clearly showed that the build of the test
            MySQL program failed, which is why it was set to be
            excluded.
            <br>
            <br>
            It failed to link against '-lmariadb'.  It turns out that
            library is no longer in MariaDB or MariaDB-devel, it is
            separately packaged in MariaDB-shared.  That may of course
            be because I have built MariaDB 10.4 from the mariadb.org
            site, because CentOS 7 only ships with the extremely old
            version 5.5.
            <br>
            <br>
            Once I installed the missing package it built the RPMs just
            fine.  However it would be easier to use it linked to static
            MariaDB libraries, as I now have to installed MariaDB-shared
            on every server that will run slurmd, i.e. all compute
            nodes.  I expect that if I looked harder at the build
            options there may be a way to do this, perhaps with linker
            flags.
            <br>
            <br>
            For now, I can progress.
            <br>
            <br>
            Thanks
            <br>
            <br>
            William
            <br>
            <br>
            -----Original Message-----
            <br>
            From: slurm-users
            <a class="moz-txt-link-rfc2396E" href="mailto:slurm-users-bounces@lists.schedmd.com"><slurm-users-bounces@lists.schedmd.com></a> On Behalf Of
            Ole Holm Nielsen
            <br>
            Sent: 11 November 2019 20:02
            <br>
            To: <a class="moz-txt-link-abbreviated" href="mailto:slurm-users@lists.schedmd.com">slurm-users@lists.schedmd.com</a>
            <br>
            Subject: Re: [slurm-users] RPM build error -
            accounting_storage_mysql.so
            <br>
            <br>
            Hi,
            <br>
            <br>
            Maybe my Slurm Wiki can help you build SLurm on CentOS/RHEL
            7? See
            <a class="moz-txt-link-freetext" href="https://wiki.fysik.dtu.dk/niflheim/Slurm_installation#build-slurm-rpms">https://wiki.fysik.dtu.dk/niflheim/Slurm_installation#build-slurm-rpms</a>
            <br>
            <br>
            Note in particular:
            <br>
            <blockquote type="cite">Important: Install the MariaDB (a
              replacement for MySQL) packages before you build Slurm
              RPMs (otherwise some libraries will be missing):
              <br>
              <br>
              yum install mariadb-server mariadb-devel
              <br>
            </blockquote>
            <br>
            /Ole
            <br>
            <br>
            <br>
            On 11-11-2019 15:22, William Brown wrote:
            <br>
            <blockquote type="cite">Fabio
              <br>
              <br>
              Did you ever resolve the problem building
              accounting_storage_mysql.so?
              <br>
              <br>
              I have the exact same problem with CentOS 7.6, building
              Slurm 19.05.03.
              <br>
              My command:
              <br>
              <br>
              rpmbuild -ta slurm-19.05.3-2.tar.bz2 | tee
              /var/tmp/slurm-build.log
              <br>
              <br>
              The directory with the plugin source is all there:
              <br>
/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accountin
              <br>
              g_storage/mysql, with a Makefile that is the same
              date/time as the
              <br>
              other accounting_storage alternatives.
              <br>
              <br>
              In the log I can see:
              <br>
              <br>
              checking for mysql_config... /usr/bin/mysql_config
              <br>
              <br>
              Looking at the process of building the RPMs it looks as if
              it has
              <br>
              skipped trying to create the missing library file, but
              then expects to
              <br>
              find it in the RPM.
              <br>
              <br>
              This is what I see when it is building, it builds the
              <br>
              accounting_storage .so files for _fileext, _none and
              _slurmdbd, but
              <br>
              not for _mysql.  I do have MariaDB-devel 10.4.10 installed
              <br>
              <br>
              .
              <br>
              <br>
              .
              <br>
              <br>
              Making all in mysql
              <br>
              <br>
              make[5]: Entering directory
              <br>
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
              <br>
              <br>
              make[5]: Nothing to be done for `all'.
              <br>
              <br>
              make[5]: Leaving directory
              <br>
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
              <br>
              <br>
              .
              <br>
              <br>
              .
              <br>
              <br>
              Making install in mysql
              <br>
              <br>
              make[4]: Entering directory
              <br>
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
              <br>
              <br>
              make[5]: Entering directory
              <br>
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
              <br>
              <br>
              make[5]: Nothing to be done for `install-data-am'.
              <br>
              <br>
              make[5]: Leaving directory
              <br>
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
              <br>
              <br>
              make[4]: Leaving directory
              <br>
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
              <br>
              <br>
              The error stream shows the problem a little later:
              <br>
              <br>
              Processing files: slurm-19.05.3-2.el7.x86_64
              <br>
              <br>
              warning: File not found:
              <br>
/home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/a
              <br>
              pps/slurm/lib64/slurm/accounting_storage_mysql.so
              <br>
              <br>
              .
              <br>
              <br>
              .
              <br>
              <br>
              Processing files: slurm-slurmdbd-19.05.3-2.el7.x86_64
              <br>
              <br>
              error: File not found:
              <br>
/home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/a
              <br>
              pps/slurm/lib64/slurm/accounting_storage_mysql.so
              <br>
              <br>
              File not found:
              <br>
/home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/a
              <br>
              pps/slurm/lib64/slurm/accounting_storage_mysql.so
              <br>
              <br>
              File not found:
              <br>
/home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/a
              <br>
              pps/slurm/lib64/slurm/accounting_storage_mysql.so
              <br>
              <br>
              RPM build errors:
              <br>
              <br>
              I looked at the Makefile for the accounting_storage_mysql
              as compared
              <br>
              to the Makefile for accounting_storage_slurmdbd to try to
              understand them.
              <br>
              <br>
              This is a selection from the Makefile for mysql:
              <br>
              <br>
              all: all-am
              <br>
              <br>
              all-am: Makefile $(LTLIBRARIES)
              <br>
              <br>
              LTLIBRARIES = $(pkglib_LTLIBRARIES)
              <br>
              <br>
              #pkglib_LTLIBRARIES = accounting_storage_mysql.la
              <br>
              <a class="moz-txt-link-rfc2396E" href="http://accounting_storage_mysql.la"><http://accounting_storage_mysql.la></a>
              <br>
              <br>
              And this is for slurmdbd:
              <br>
              <br>
              all: all-am
              <br>
              <br>
              all-am: Makefile $(LTLIBRARIES)
              <br>
              <br>
              LTLIBRARIES = $(pkglib_LTLIBRARIES)
              <br>
              <br>
              pkglib_LTLIBRARIES = accounting_storage_slurmdbd.la
              <br>
              <a class="moz-txt-link-rfc2396E" href="http://accounting_storage_slurmdbd.la"><http://accounting_storage_slurmdbd.la></a>
              <br>
              <br>
              So I think that the problem is that the definition of
              <br>
              pkglib_LTLIBRARIES is commented out in the
              accounting_storage_mysql
              <br>
              Makefile, hence nothing to build.
              <br>
              <br>
              Is that intended?  Is it a consequence of something in my
              environment?
              <br>
            </blockquote>
          </blockquote>
        </blockquote>
      </blockquote>
      <br>
    </blockquote>
  </body>
</html>