Solaris famously compiles everything in (/usr)/bin as 32-bit.
Alas, my SmartOS test system is gone, or I would show you.
Alas, my SmartOS test system is gone, or I would show you.
smartos$ uname -a
SunOS smartos 5.11 joyent_20240701T205528Z i86pc i386 i86pc Solaris
Core system stuff: smartos$ file /usr/bin/ls
/usr/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (Solaris), dynamically linked, interpreter /usr/lib/ld.so.1, not stripped
smartos$ file /bin/sh
/bin/sh: symbolic link to ksh93
smartos$ file /bin/ksh93
/bin/ksh93: ELF 64-bit LSB executable, x86-64, version 1 (Solaris), dynamically linked, interpreter /usr/lib/amd64/ld.so.1, not stripped
And then the pkgsrc stuff: smartos$ which ls
/opt/local/bin/ls
smartos$ file /opt/local/bin/ls
/opt/local/bin/ls: symbolic link to /opt/local/bin/gls
smartos$ file /opt/local/bin/gls
/opt/local/bin/gls: ELF 64-bit LSB executable, x86-64, version 1 (Solaris), dynamically linked, interpreter /usr/lib/amd64/ld.so.1, not stripped $ uname -a
SunOS bob 5.11 11.4.68.164.2 sun4v sparc sun4v kernel-zone
$ pwd
/usr/bin
$ file * | grep 32-bit | wc
46 1008 8890
$ file * | grep 64-bit | wc
1036 21449 185122
I think Solaris is famous for doing away with static linking.E: A Solaris 10 amd64 box is all 32-bit in /usr/bin.