On Mon, 2024-05-06 at 11:38:30 +0100, Slurm users wrote:
> Hello,
> 
> I instructed port to use binutils from ports (version 2.40 native) instead
> of base:
> 
> `/usr/local/bin/ld: unrecognised emulation mode: elf_aarch64`
> 
> ```
> /usr/local/bin/ld -V |grep aarch64
>    aarch64cloudabi
>    aarch64cloudabib
>    aarch64elf
>    aarch64elf32
>    aarch64elf32b
>    aarch64elfb
>    aarch64fbsd
>    aarch64fbsdb
>    aarch64haiku
>    aarch64linux
>    aarch64linux32
>    aarch64linux32b
>    aarch64linuxb
>    aarch64pe
> ```
> 
> Any clues about "elf_aarch64" and "aarch64elf" mismatch?

This looks (I admit, I haven't UTSL) like the emulation mode is constructed
from an "elf_" prefix and the architecture nickname - this works for "x86_64"
and "i386" since the "ld" for the Intel/AMD architectures indeed provides the
emulations "elf_x86_64" and "elf_i386" while for 64-bit ARM "elf" is used as
a suffix. So this is mainly an ld inconsistency, I'm afraid (which might be
fixed by adding alias names - but the hopes are pretty low).

Non-emulated builds shouldn't be affected by the issue you found, right?
(There is Slurm built for ARM64 Debian. Maybe they have patched the source?)


Two ways to get this fixed I can imagine:
(a) find the place where the emulation mode name is combined, and teach that
  of possible exceptions to the implemented rule (there may be more than just
  ARM - what about RISC-V, PPC64*, ...?)
(b) interrupt the build in a reasonable place, find all occurreences of the
  wrong emulation string, and replace it with its existing counterpart

There should be no doubt which one I'd prefer - I'll go and read TS ;)

Cheers,
 Steffen


-- 
Steffen Grunewald, Cluster Administrator
Max Planck Institute for Gravitational Physics (Albert Einstein Institute)
Am Mühlenberg 1 * D-14476 Potsdam-Golm * Germany
~~~
Fon: +49-331-567 7274
Mail: steffen.grunewald(at)aei.mpg.de
~~~

-- 
slurm-users mailing list -- slurm-users@lists.schedmd.com
To unsubscribe send an email to slurm-users-le...@lists.schedmd.com

Reply via email to