Re: Compiling Perl in 32 bit chroot on sparc64 failing
John Klos <[email protected]>
| Newsgroups | gmane.os.netbsd.ports.sparc64,gmane.os.netbsd.ports.sparc |
|---|---|
| Message-ID | <[email protected]> |
>>> kver -r 8.0 -p sparc chroot /usr/sandbox_8.0 /bin/sh >>> /usr/local/lib/libkver.so: invalid ELF class 2; expected 1 >> >> #define ELFCLASS32 1 /* 32-bit objects */ >> #define ELFCLASS64 2 /* 64-bit objects */ >> >> You have a 64 bit libkver.so and something tries to load it in the sandbox? > > I thought that libkver needed to be built for the target system. I thought it needed to be build for the host system, plus it wants to be accessible from the target, too. When it doesn't exist in the chroot: kver -r 8.0 -p sparc chroot /usr/sandbox /bin/sh Cannot open "/usr/local/lib/libkver.so" In the past, and with the 8.1 chroot, I can copy /usr/local/lib/libkver.* /usr/sandbox/usr/local/lib/, and it works just fine. Now, with the 8.0 chroot and the 64 bit libkver.so, I get the ELF error. So, I kver chrooted to 8.1, built libkver there, then copied the 32 bit libkver.* to the 8.0 chroot, and it works. Next, I compiled perl from 2019Q2 there, and it works. Something's broken about our 8.1 chroots :( John