[fpc-pascal] Why can't 64bit FPC cross-compile 32bit

Florian Klaempfl florian at freepascal.org
Mon Nov 9 16:07:34 CET 2009


Jonas Maebe schrieb:
> 
> On 09 Nov 2009, at 13:49, Graeme Geldenhuys wrote:
> 
>> See the output below. The 32bit Linux FPC can target 32bit & 64bit
>> platforms. But 64bit Linux FPC cannot target 32bit platforms. The later
>> can only cross-compile to other 64bit platforms.
> 
> I guess you mean this:
> 
>> ----------------------
>> ./ppc386 -i
>> Free Pascal Compiler version 2.2.5
>>
>> Compiler Date      : 2009/05/28
>> Compiler CPU Target: i386
>>
>> Supported targets:
> [snip]
>>  Linux for x64_6432
> 
> x64_6432 is not the same as x64_64. It means, afaik, a 32 bit binary
> running on a 64 bit Linux system. It probably changes some default
> library search paths or so. The i386 compiler cannot generate x86_64
> binaries. The appropriate code generator is simply not available.

x64_6432 is a special target for a hacked 32 bit mode: it allows to use
the extended register set of x86_64 in 32 bit mode.



More information about the fpc-pascal mailing list