[slurm-users] Slurm 19-05-4-1 and Centos8
Philip Kovacs
pkdevel at yahoo.com
Sun Dec 8 23:28:44 UTC 2019
There's a typo in there. It's lazy not -lazy. Try adding exactly this line just before the %configure:
# use -z lazy to allow dlopen with unresolved symbolsexport LDFLAGS="%{build_ldflags} -Wl,-z,lazy" <--- this should fix it%configure \
On Sunday, December 8, 2019, 05:30:00 PM EST, Brian Andrus <toomuchit at gmail.com> wrote:
There must be something more, because I am trying it with
[root at node02 ~]# rpm -E "%{build_ldflags}"
-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-z,-lazy
It builds (as expected) but slurmd will not start due to the same error. (Note, I have also tried LDFLAGS without --specs and without -Wl,-z-now with the same result)
[root at node02 ~]# slurmd
slurmd: error: plugin_load_from_file: dlopen(/usr/lib64/slurm/select_cons_tres.so): /usr/lib64/slurm/select_cons_tres.so: undefined symbol: powercap_get_cluster_current_cap
slurmd: error: Couldn't load specified plugin name for select/cons_tres: Dlopen of plugin file failed
slurmd: fatal: Can't find plugin for select/cons_tres
So I still stand by my initial assessment of slurmd not running when built under CentOS8, even with lazy
I see others have had the same issue and even add to comments in the bugs, but no responses/resolution for this have been posted.
FWIW, I also see the issue with the latest slurm 20.05 pre1 code.
Brian Andrus
On 12/5/2019 11:46 PM, von St. Vieth, Benedikt wrote:
Hi again,
I answered this question on Oct 28. Simply use lazy binding as
required by slurm. See a copy below of my Oct 28 response to your
original thread.Just adjust the %build section of the rpm spec to
ensure that -Wl,-z,-lazy appears at the end of LDFLAGS. Problem
solved.
Isn't this something that should end up in the upstream .spec, with a if/else condition for EL8?
At the moment we are able to use a only slightly modified version of the original spec to build our EL7 version.
best
benedikt
High-Performance Computing Systems
Juelich Supercomputing Centre
phone: +49 2461 61-9401
fax: +49 2461 61-6656
email: b.von.st.vieth at fz-juelich.de
-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------
Forschungszentrum Juelich GmbH
52425 Juelich
Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzender des Aufsichtsrats: MinDir Volker Rieke
Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender),
Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
Prof. Dr. Sebastian M. Schmidt
-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------
On 6. Dec 2019, at 08:23, Shane Kelly <Shane.Kelly at glasgow.ac.uk> wrote:
Hi Phillip,
Thanks for taking the time to reply to me - while I did search
the list before posting, I did not find your response.
Many thanks for pointing out the solution - originally, and again for
me specifically. You, and people like you keep open-source software
moving forward.
Thanks again for your time, I do appreciate it.
Kind regards,
Shane Kelly
I answered this question on Oct 28. Simply use lazy binding as
required by slurm. See a copy below of my Oct 28 response to your
original thread.Just adjust the %build section of the rpm spec to
ensure that -Wl,-z,-lazy appears at the end of LDFLAGS. Problem
solved.
You probably built slurm with immediate binding instead of lazy
binding. Check the tags in the plugin for BIND_NOW: $ readelf
-d /usr/lib64/slurm/select_cons_tres.so | grep BIND_NOW If you find
that tag, relink slurm with lazy binding instead, i.e. do not use
any form of "now" linking, e.g. -Wl,-z,now.> Note that the linker
will honor the last directive seen on the command line, so simply
appending -Wl,-z,lazy to the end> should suffice.
On Thursday, December 5, 2019, 12:36:52 PM EST, Brian Andrus
<toomuchit at gmail.com> wrote:
Tim claims it works...
I have compiled it, but when you try to run slurmd, it throws some
errors and will not start. From a previous thread:
While I can successfully build/run slurmctld, slurmd is failing
because ALL of the SelectType libraries are missing symbols. Example
from select_cons_tres.so: # slurmd
slurmd: error: plugin_load_from_file:
dlopen(/usr/lib64/slurm/select_cons_tres.so): /usr/lib64/slurm/select_cons_tres.so:
undefined symbol: powercap_get_cluster_current_cap slurmd: error:
Couldn't load specified plugin name for select/cons_tres: Dlopen of
plugin file failed slurmd: fatal: Can't find plugin for
select/cons_tres
# nm -D /usr/lib64/slurm/libslurmfull.so|grep powercap_
000000000010f7b8 T slurm_free_powercap_info_msg
0000000000060060 T slurm_print_powercap_info_msg
I am in the process of getting my client to purchase support so I can
have a ticket that gets attention :)
Brian
On 12/5/2019 4:17 AM, Shane Kelly wrote:
Hi,
Is there anybody who has actually managed to compile from rpm
on Centos 8?
And if so, could they share their recipe, please?
Thanks in anticipation :-)
Shane Kelly
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.schedmd.com/pipermail/slurm-users/attachments/20191208/3bd62d8b/attachment-0001.htm>
More information about the slurm-users
mailing list