On 7/16/26 03:22, Michael Tokarev wrote:
Package: gcc-15-sh4-linux-gnu
Version: 15.3.0-1cross1
Severity: normal
X-Debbugs-Cc: [email protected]
User: [email protected]
Usertags: sh4

When trying to build an sh4eb binary, there's a failure at the link stage:

  sh4-linux-gnu-gcc -mb vdso.S [other options]
  ...
  sh4-linux-gnu-ld.bfd: unrecognised emulation mode: shelf_linux
  Supported emulations: shlelf_linux shlelf_fd

I built big endian binaries fine with 15.1.

I.E. https://landley.net/bin/toolchains/19-06-2026/sh4eb-linux-musl-cross.tar.xz built https://landley.net/bin/mkroot/0.8.14/sh4eb.tgz and booted it under QEMU.

I admit I haven't tried to do a multilib or glibc compiler in ages...

https://landley.net/bin/toolchains/19-06-2026/README

From the specs:

  *link_emul_prefix:
  sh%{!mb:l}elf

I dunno if this is supposed to be valid or not, and whenever this is a
gcc bug (specs file) or missing support in binutils.

as gets --big option correctly.

Also, using

  sh4-linux-gnu-gcc -Wl,-EB -Wa,--big vdso.S

produces a binary, but I dunno (yet) if it is the right one or not.

This is needed for qemu, as it now ships vdso for sh4eb (in assembly
form, so it does not need anything extra) which has to be compiled.

I was using qemu 11.0.0 with my patch to provide 200 megs of memory to qemu's r2d board:

https://lists.gnu.org/archive/html/qemu-devel/2026-01/msg06318.html

Rob

Reply via email to