Re: OMAGIC a.out not working with 1.3.99

Paul Gortmaker (
Sat, 25 May 1996 05:08:45 +1000 (EST)

- From Jamie Lokier ( Tue, 21 May 96 21:00 BST

> My really old OMAGIC a.out /bin/ping doesn't run any more: strace says:
> execve("/bin/ping", ["ping"], [24 vars]) = -1 ENOEXEC (Exec format error)
> This is from Slackware 1.2. Some might suggest I fetch and recompile
> it, but that's not the point. This is with binfmt_aout loaded as a
> module. (Yes, the module _is_ loaded).

Your binary is corrupted somehow. It can't be any older than this one,
because this one dates back to the major changes at 0.99.10 where all
net tools had to be recompiled.

foo:/usr/bin> ls -l ping ; ldd ping ; ping -c1 bar
-rwsr-x--x 1 root root 9948 May 10 1993 ping*
/ (DLL Jump 4.3pl3)
PING (XXX.XXX.XX.XXX): 56 data bytes
64 bytes from icmp_seq=0 ttl=255 time=1 ms

--- ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 1/1/1 ms

Others even older still work fine as well. (Who says linux hasn't
maintained a reasonable level of binary compatibility...)

foo:/usr/bin> ls -l whoami ; ldd whoami ; ./whoami
-rwxr-xr-x 1 root root 1400 Sep 5 1992 whoami*
/lib/ (4.0)

Yes, that binary is approaching 4 yrs old (as are most on that machine). I'd
bet some of the early hackers like HJ or Eric or Ted might even have older
binaries kicking around somewhere. I don't think anybody had even considered
pressing a "Linux CD-ROM" at that point.

Historians can still boot up HJ's old 3rootdisk.gz from ./GCC/rootdisk/
on most linux archives. It has a pre v1.0 kernel and some fairly old
binaries as well. Still works like a charm.