Hi,
Maybe my Slurm Wiki can help you build SLurm on CentOS/RHEL 7? See
https://wiki.fysik.dtu.dk/niflheim/Slurm_installation#build-slurm-rpms
Note in particular:
Important: Install the MariaDB (a replacement for MySQL) packages before you
build Slurm RPMs (otherwise some libraries will be missing):
yum install mariadb-server mariadb-devel
/Ole
On 11-11-2019 15:22, William Brown wrote:
Fabio
Did you ever resolve the problem building accounting_storage_mysql.so?
I have the exact same problem with CentOS 7.6, building Slurm 19.05.03.
My command:
rpmbuild -ta slurm-19.05.3-2.tar.bz2 | tee /var/tmp/slurm-build.log
The directory with the plugin source is all there:
/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql,
with a Makefile that is the same date/time as the other
accounting_storage alternatives.
In the log I can see:
checking for mysql_config... /usr/bin/mysql_config
Looking at the process of building the RPMs it looks as if it has
skipped trying to create the missing library file, but then expects to
find it in the RPM.
This is what I see when it is building, it builds the accounting_storage
.so files for _fileext, _none and _slurmdbd, but not for _mysql. I do
have MariaDB-devel 10.4.10 installed
.
.
Making all in mysql
make[5]: Entering directory
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
.
.
Making install in mysql
make[4]: Entering directory
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
make[5]: Entering directory
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
make[5]: Nothing to be done for `install-data-am'.
make[5]: Leaving directory
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
make[4]: Leaving directory
`/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
The error stream shows the problem a little later:
Processing files: slurm-19.05.3-2.el7.x86_64
warning: File not found:
/home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/apps/slurm/lib64/slurm/accounting_storage_mysql.so
.
.
Processing files: slurm-slurmdbd-19.05.3-2.el7.x86_64
error: File not found:
/home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/apps/slurm/lib64/slurm/accounting_storage_mysql.so
File not found:
/home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/apps/slurm/lib64/slurm/accounting_storage_mysql.so
File not found:
/home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/apps/slurm/lib64/slurm/accounting_storage_mysql.so
RPM build errors:
I looked at the Makefile for the accounting_storage_mysql as compared to
the Makefile for accounting_storage_slurmdbd to try to understand them.
This is a selection from the Makefile for mysql:
all: all-am
all-am: Makefile $(LTLIBRARIES)
LTLIBRARIES = $(pkglib_LTLIBRARIES)
#pkglib_LTLIBRARIES = accounting_storage_mysql.la
<http://accounting_storage_mysql.la>
And this is for slurmdbd:
all: all-am
all-am: Makefile $(LTLIBRARIES)
LTLIBRARIES = $(pkglib_LTLIBRARIES)
pkglib_LTLIBRARIES = accounting_storage_slurmdbd.la
<http://accounting_storage_slurmdbd.la>
So I think that the problem is that the definition of pkglib_LTLIBRARIES
is commented out in the accounting_storage_mysql Makefile, hence nothing
to build.
Is that intended? Is it a consequence of something in my environment?