sergei_gorelkin at mail.ru
Fri Nov 7 15:59:25 CET 2014
07.11.2014 17:01, Pierre Free Pascal пишет:
> The is no COFF magic.
> the first 2 bytes indicate normally a MACHINE type.
> The files I produced start etiher by:
> 0x8664 indicating a x86 coff header
> 0x014c indicating a i386 coff header.
> 0x0000 is also listed as IMAGE_FILE_MACHINE_UNKNOWN
> Could it be that your coff object only contains raw data,
> so that it is usable on different formats?
> After some searching, I think that the
> answer to your problem is here:
> Your header looks like a BigObjHeader
> This means that the object is prepared to handle relocation that are not in
> the 4-byte
> range... A feature that Free Pascal indeed does not support IIRC...
> There is probably an option somewhere to use normal 32-bit relocation type
> objects in you Visual C++ configuration, unless you really need those 64-bit
Even if this issue is resolved, linking together binutils-compatible and VC-compatible COFF files is
next to impossible, due to significant differences in processing of COMDAT sections, debug
information, section naming, etc.
More information about the fpc-devel