Date: Thu, 18 May 2023 18:22:08 +0000 From: John F Carr <jfc@mit.edu> To: Thomas David Rivers <rivers@dignus.com> Cc: "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org> Subject: Re: 32-bit executables on aarch64? Message-ID: <46BE47DA-9306-4682-8320-D2CBEB5918F7@mit.edu> In-Reply-To: <202305181816.34IIGA8P024382@office.dignus.com> References: <202305181816.34IIGA8P024382@office.dignus.com>
next in thread | previous in thread | raw e-mail | index | archive | help
I had to set up a jail to test 32 bit ARM on a 64 bit host. If you get pas= t the link error, expect the program to fail at startup. $ file /bin/ls /usr/jail/armv7/bin/ls /bin/ls: ELF 64-bit LSB pie executable, ARM aarch64, version= 1 (FreeBSD), dynamically linked, interpreter /libexec/ld-elf.so.1, for Fre= eBSD 13.2 (1302505), FreeBSD-style, stripped /usr/jail/armv7/bin/ls: ELF 32-bit LSB executable, ARM, EABI5 version 1 (Fr= eeBSD), dynamically linked, interpreter /libexec/ld-elf.so.1, FreeBSD-style= , for FreeBSD 13.2 (1302500), stripped $ /usr/jail/armv7/bin/ls ELF interpreter /libexec/ld-elf.so.1 not found, error 8 Abort trap "Not found" means "is not a 32 bit executable." Because both 32 and 64 bit= progams use the same intepreter pathname they can't both work. > On May 18, 2023, at 14:16, Thomas David Rivers <rivers@dignus.com> wrote: >=20 >=20 > Tried the following with a small "hello world" program on=20 > FreeBSD freebsd 13.2-RELEASE FreeBSD 13.2-RELEASE releng/13.2-n254617-5= 25ecfdad597 GENERIC arm64 >=20 > # cc -m32 hello.c >=20 > To get these errors: >=20 > ld: error: /tmp/hello-1eb3b8.o is incompatible with /usr/lib/crt1.o > cc: error: linker command failed with exit code 1 (use -v to see invocat= ion) >=20 > Is building a 32-bit program not supported on 13.2 arm64? >=20 > man cc >=20 > gave me the CLANG doc... which didn't even mention "m32"; so perhaps > I just need a different set of options? I tried -arch arm but I still > got 64-bit code. Also, I tried several other -arch options and didn't > see a difference, even with -arch x86, I still got Aarch64 code. >=20 > - Many thanks! - > - Dave Rivers - >=20 > -- > rivers@dignus.com Work: (919) 676-0847 > Get your mainframe programming tools at http://www.dignus.com >=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46BE47DA-9306-4682-8320-D2CBEB5918F7>