>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