[Lazarus] Compiling only LCL to 64-bit, on Windows

Marcos Douglas md at delfire.net
Thu Aug 25 20:27:18 CEST 2011


On Thu, Aug 25, 2011 at 4:08 AM, Andreas Schneider <aksdb at gmx.de> wrote:
> At Wednesday, 24.08.2011 on 15:06 Marcos Douglas wrote:
>>
>> So, what is the best way to use Win 32 and 64-bit, in my case?
>>
>
> I would suggest: don't go the most complicated route ever ;-)
> It's really dead simple to get cross compilation with Windows as target to run. In your case I would suggest the lowest common denominator: the 32bit compiler. So build from/for 32bit and add the 64bit cross compiler there:
>
> I assume the official FPC 2.4.4 release for 32bit to be installed under C:\FPC\2.4.4.
>
> set PATH=C:\FPC\2.4.4\bin\i386-win32;%PATH%
> cd C:\FPC\2.5.1
> svn co http://svn.freepascal.org/svn/fpc/trunk src
> cd src
> make install INSTALL_PREFIX=C:\FPC\2.5.1
> make crossinstall INSTALL_PREFIX=C:\FPC\2.5.1 OS_TARGET=win64 CPU_TARGET=x86_64
> make clean
>
>
> Done. Now you set the compiler (in Lazarus) to C:\FPC\2.5.1\bin\i386-win32\fpc.exe and switch the target architecture/OS in the project options depending on your needs - the 32bit fpc.exe will then either invoke the 32bit ppcx86.exe to compile for 32bit, or the 32bit ppccrossx86_86.exe to compile for 64bit.
>

My command:
make clean all crossinstall UPXPROG=echo COPYTREE=echo OPT="-gl"
INSTALL_PREFIX=%myFPC% PP=%myBINUTILS%\ppc386.exe

ERROR:
make[5]: Entering directory `W:/md/dev/freepascal/compiler/2.5.1/compiler/utils'

make[5]: Leaving directory `W:/md/dev/freepascal/compiler/2.5.1/compiler/utils'
echo ppcrossx64.exe
ppcrossx64.exe
W:/md/dev/freepascal/binutils/2.5.1/x86_64-win64/ginstall.exe -m 755 -d W:\md\de
v\freepascal\compiler\2.5.1/bin/i386-win32
W:/md/dev/freepascal/binutils/2.5.1/x86_64-win64/cp.exe -fp ppcrossx64.exe W:\md
\dev\freepascal\compiler\2.5.1/bin/i386-win32/ppcrossx64.exe
make[4]: Leaving directory `W:/md/dev/freepascal/compiler/2.5.1/compiler'
make[3]: Leaving directory `W:/md/dev/freepascal/compiler/2.5.1'
make rtl_install FPC=W:/md/dev/freepascal/compiler/2.5.1/compiler/ppcrossx64.exe
 ZIPDESTDIR=W:/md/dev/freepascal/compiler/2.5.1 FPCMAKE=fpcmake
make[3]: Entering directory `W:/md/dev/freepascal/compiler/2.5.1'
make -C rtl install
make[4]: Entering directory `W:/md/dev/freepascal/compiler/2.5.1/rtl'
make -C win64 all
make[5]: Entering directory `W:/md/dev/freepascal/compiler/2.5.1/rtl/win64'
make[5]: Leaving directory `W:/md/dev/freepascal/compiler/2.5.1/rtl/win64'
fpcmake -p -Tx86_64-win64 Makefile.fpc
process_begin: CreateProcess((null), fpcmake -p -Tx86_64-win64 Makefile.fpc, ...
) failed.
make (e=2): O sistema nÒo pode encontrar o arquivo especificado.
make[4]: *** [fpc_install] Error 2
make[4]: Leaving directory `W:/md/dev/freepascal/compiler/2.5.1/rtl'
make[3]: *** [rtl_install] Error 2
make[3]: Leaving directory `W:/md/dev/freepascal/compiler/2.5.1'
make[2]: *** [installbase] Error 2
make[2]: Leaving directory `W:/md/dev/freepascal/compiler/2.5.1'
make[1]: *** [install] Error 2
make[1]: Leaving directory `W:/md/dev/freepascal/compiler/2.5.1'
make: *** [crossinstall] Error 2
W:\md\dev\freepascal\compiler\2.5.1>

Marcos Douglas




More information about the Lazarus mailing list