ld skipping incompatible object on amd64
Posted: Fri Mar 02, 2007 6:50 pm
Hey everyone,
Been a while sense I've been able to check this site, as work's been crazy-busy.
I did, however, just manage to build myself a new AMD64 system, but I'm having difficulties building my OS now!
I've changed my ant build scripts to force gcc to compile 32-bit code (appended the -m32 -oformat=elf32-i386 params).
ld, however, refuses to accept my nasm build start.obj file. I don't understand this. I've checked all my objects and they are correctly elf32-i386 format (objdump --file-headers). ld doesn't complain about any other nasm built objects, either.
The only thing that's different about this particular object is the exact code in it, as far as I can tell.
Can anybody suggest to me why ld doesn't like this file?
I've provided the source, in case anybody would like to look at it.
Thanks,
Jeff
Been a while sense I've been able to check this site, as work's been crazy-busy.
I did, however, just manage to build myself a new AMD64 system, but I'm having difficulties building my OS now!
I've changed my ant build scripts to force gcc to compile 32-bit code (appended the -m32 -oformat=elf32-i386 params).
ld, however, refuses to accept my nasm build start.obj file. I don't understand this. I've checked all my objects and they are correctly elf32-i386 format (objdump --file-headers). ld doesn't complain about any other nasm built objects, either.
The only thing that's different about this particular object is the exact code in it, as far as I can tell.
Can anybody suggest to me why ld doesn't like this file?
I've provided the source, in case anybody would like to look at it.
Thanks,
Jeff