>On Monday, October 28, 2019, 03:18:06 PM EDT, Brian Andrus 
 ><toomuc...@gmail.com> wrote:
>I spoke too soon.

>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
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 
endshould suffice.
Phil


 



   

Reply via email to