Intel 80386, version 1 (SYSV) vs Intel 80386, version 1 (GNU/Linux)
James Cloos
cloos@jhcloos.com
Fri Oct 1 07:38:00 GMT 2010
I searched through the manuals and googled to no avail.
I tried compiling some stuff on my amd64 box for an ia32 box, using -m32
and and appropriate -march. The resulting libraries worked fine when
compiled static, but failed when compiled dynamic.
The destination box's executables and libraryies report:
foo: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
dynamically linked (uses shared libs), for GNU/Linux 2.6.9,
not stripped
whereas the files generated by my amd64 box report:
bar: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux),
dynamically linked (uses shared libs), for GNU/Linux 2.6.9,
not stripped
In readelf format, that is:
OS/ABI: UNIX - System V
vs:
OS/ABI: UNIX - Linux
I tried using -Wl,--hash-style=sysv, but the libraries and executables
still say Linux rather than SYSV. (The .o files say SYSV.)
How do I force the former os/abi?
-JimC
--
James Cloos <cloos@jhcloos.com> OpenPGP: 1024D/ED7DAEA6
More information about the Gcc-help
mailing list