Multiarch.
I’ve gotten multiarch working again today:
root@shonap:/# ls -l /lib/libc-* /lib/ld-linux.so.2
ls: /lib/libc-*: No such file or directory
lrwxrwxrwx 1 root root 22 Jan 25 18:56 /lib/ld-linux.so.2 -> i386-linux/ld-2.3.2.so
root@shonap:/# ls /lib/i386-linux/
ld-2.3.2.so libm.so.6 libnss_nisplus-2.3.2.so
ld-linux.so.2 libmemusage.so libnss_nisplus.so.2
libBrokenLocale-2.3.2.so libnsl-2.3.2.so libpcprofile.so
libBrokenLocale.so.1 libnsl.so.1 libpthread-0.10.so
libSegFault.so libnss_compat-2.3.2.so libpthread.so.0
libanl-2.3.2.so libnss_compat.so.2 libresolv-2.3.2.so
libanl.so.1 libnss_dns-2.3.2.so libresolv.so.2
libc-2.3.2.so libnss_dns.so.2 librt-2.3.2.so
libc.so.6 libnss_files-2.3.2.so librt.so.1
libcrypt-2.3.2.so libnss_files.so.2 libthread_db-1.0.so
libcrypt.so.1 libnss_hesiod-2.3.2.so libthread_db.so.1
libdl-2.3.2.so libnss_hesiod.so.2 libutil-2.3.2.so
libdl.so.2 libnss_nis-2.3.2.so libutil.so.1
libm-2.3.2.so libnss_nis.so.2
At least, it works for glibc on i386. I now need to fix up gcc to look in the right places and whip up a few sample packages. The nicest thing about all this is the small size: it’s barely a patch to upstream’s sources and apart from the splitting of packages which is needed, it’s a tiny change to the Debian packaging.