Summary: | sys-apps/sandbox-2.34: fails during ./configure on MIPS multilib in catalyst stage3 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Joshua Kinard <kumba> |
Component: | Current packages | Assignee: | Sandbox Maintainers <sandbox> |
Status: | RESOLVED INVALID | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | MIPS | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | config.log |
Description
Joshua Kinard
2023-07-10 18:17:49 UTC
Is binfmt-misc configured for all 3 ABIs? Do you have appropriate qemu-user binaries in /usr/bin for all 3 ABIs? Is catalyst copying all necessary qemu-user binaries before chrooting? (In reply to Mike Gilbert from comment #1) > Is binfmt-misc configured for all 3 ABIs? > binfmt-misc is configured on the host-side as far as I am aware, and it works for all six manual chroots and catalyst is able to build approximately ~75% of the stage3 multilib before it bails on sandbox. If binfmt-misc wasn't configured at all, or configured incorrectly, I am doubtful I'd have gotten that far along... > Do you have appropriate qemu-user binaries in /usr/bin for all 3 ABIs? > > Is catalyst copying all necessary qemu-user binaries before chrooting? > For my manual chroots, I have a custom script that mounts/umounts necessary directories before chrooting in, and it also verifies that all six qemu-mips* binaries in the chroot are present and up-to-date, otherwise, it copies them in from the host. In the stage3 catalyst chroot's case, it only has "qemu-mipsn32" copied in, as I was under the assumption that the "interpreter" directive in a spec file only took a single argument. Which seems to work for most cases? That said, it does look like the "interpreter" directive accepts multiple arguments, so I am re-running the stage3 attempt with the three applicable ABI qemu bins specified to see if that fixes things. Will update in a few hours. Have to nuke the stage3 chroot from orbit to get it to pick up the change to the spec file. (In reply to Joshua Kinard from comment #2) > In the stage3 catalyst chroot's case, it only has "qemu-mipsn32" copied in, > as I was under the assumption that the "interpreter" directive in a spec > file only took a single argument. Which seems to work for most cases? It works fine when you are only executing code for a single ABI. When not cross-compiling, the sandbox configure script attempts to execute code for each enabled ABI. So, you will need multiple qemu binaries to cover that. (In reply to Mike Gilbert from comment #3) > (In reply to Joshua Kinard from comment #2) > > In the stage3 catalyst chroot's case, it only has "qemu-mipsn32" copied in, > > as I was under the assumption that the "interpreter" directive in a spec > > file only took a single argument. Which seems to work for most cases? > > It works fine when you are only executing code for a single ABI. > > When not cross-compiling, the sandbox configure script attempts to execute > code for each enabled ABI. So, you will need multiple qemu binaries to cover > that. Yeah, looks like getting all three interpreters into the stage3 fixed it. Going to mark this one as RESOLVED::PEBKAC (we need this as a legit resolution status). Thanks! |