[fpc-devel] Problems with building x86_64 on darwin
Jonas Maebe
jonas.maebe at elis.ugent.be
Mon Nov 25 22:42:27 CET 2013
On 25 Nov 2013, at 22:33, Andrew Brunner wrote:
> On 11/25/13, 2:56 PM, Jonas Maebe wrote:
>> On 25 Nov 2013, at 21:28, Andrew Brunner wrote:
>>
>>> --------- FPC BUILD PROBLEMS------------
>>> Trying to build my svn/fpc/trunk version
>>>
>>> make all OPT="-O-" DEBUG=1 OS_TARGET=darwin CPU_TARGET=x86_64 PP=/usr/local/lib/fpc/2.6.2/ppcx64
>>>
>>> /usr/local/lib/fpc/2.6.2/ppcx64 -dNOMOUSE -Ur -dFPC_USE_LIBC -gl -Ur -Xs -O2 -n -Fi../inc -Fi../i386 -Fi../unix -Fi../bsd -Fi../bsd/i386 -Fi../darwin/i386 -FE. -FU/Developer/FPC/rtl/units/i386-darwin -O- -di386 -dDEBUG -dRELEASE -Us -Sg ../bsd/system.pp
>>> system.inc(171,4) Fatal: Can't open include file "x86_64.inc"
>>> Fatal: Compilation aborted
>>> make[5]: *** [system.ppu]
>
> make all OPT="-O-" DEBUG=1 OS_TARGET=darwin CPU_TARGET=x86_64 PP=/usr/local/lib/fpc/2.6.2/ppc386 works perfectly. Why doesn't ppcx64 work at all?
Using simply wrong hyperboles is not productive. I explained in my previous message, which you quoted below, why you cannot use a cross-compiler (such as the ppcx64 included with FPC releases on Mac OS X) to build FPC from trunk without using a special make option, and which exact make option you have to add so that it does work. Alternatively, use a cross-compiler like the one you built above. It's x86-64 binaries will be exactly the same as the ones generated by a native x86-64 compiler.
>>> ------------Lazarus Build Problems------------
>> That's because ppcx64 on Mac OS X is an i386->x86-64 cross-compiler and the Makefiles are not designed for bootstrapping with cross-compilers. You can work around it by adding CPU_SOURCE=x86_64, but you can just as well build a new cross-compiler.
> I just need something that works. It's a goal to have 64bit support for my downloads. I like to have a 64bit build of FPC like on Linux.
If you just need something that works, use the cross-compiler. If you want a native 64 bit build, you can create one as shown above.
Jonas
More information about the fpc-devel
mailing list