[fpc-pascal] Crosscompile FPC

Hartmut Eilers hartmut at eilers.net
Thu May 20 10:31:54 CEST 2010

Hi Folks,

for one of my projects I want to have a build environment to
build the source for the following platforms:
Linux ARM; Linux i386, Linux X64 and Windows i386

the compilers for Linux ARM and Windows i386 I build like that
from a clean 2.4.0 SVN checkout:

make clean
make crosszipinstall CPU_TARGET=arm CROSSOPT='-CfSOFT -dUSB92 -darm
-dno_smpeg -dFPC_ARMEL -O- -gl'

make clean
make crosszipinstall OS_TARGET=win32 CPU_TARGET=i386

Now I tried to build it for Linux i386 like that:

> ubuntu at kubuntu904:~/fpc240$ make crosszipinstall OS_TARGET=linux
> make zipinstall CROSSINSTALL=1
> make[1]: Betrete Verzeichnis '/home/ubuntu/fpc240'
> make fpc_zipinstall ZIPTARGET=install
> FULLZIPNAME=fpc-2.4.0rc1.i386-linux
> FPC=/home/ubuntu/fpc240/compiler/ppc386 ZIPDESTDIR=/home/ubuntu/fpc240
> FPCMAKE=/home/ubuntu/fpc240/utils/fpcm/fpcmake
> make[2]: Betrete Verzeichnis '/home/ubuntu/fpc240'
> make install INSTALL_PREFIX=/tmp/fpc-pack ZIPINSTALL=1
> make[3]: Betrete Verzeichnis '/home/ubuntu/fpc240'
> make installbase FPC=/home/ubuntu/fpc240/compiler/ppc386
> ZIPDESTDIR=/home/ubuntu/fpc240
> FPCMAKE=/home/ubuntu/fpc240/utils/fpcm/fpcmake
> make[4]: Betrete Verzeichnis '/home/ubuntu/fpc240'
> /usr/bin/install -m 755 -d /tmp/fpc-pack/lib/fpc/2.4.0
> /usr/bin/install -m 755 -d /tmp/fpc-pack/bin
> make compiler_install FPC=/home/ubuntu/fpc240/compiler/ppc386
> ZIPDESTDIR=/home/ubuntu/fpc240
> FPCMAKE=/home/ubuntu/fpc240/utils/fpcm/fpcmake
> make[5]: Betrete Verzeichnis '/home/ubuntu/fpc240'
> make -C compiler install
> make[6]: Betrete Verzeichnis '/home/ubuntu/fpc240/compiler'
> make -C utils install
> make[7]: Betrete Verzeichnis '/home/ubuntu/fpc240/compiler/utils'
> make[7]: Für das Ziel »install« ist nichts zu tun.
> make[7]: Verlasse Verzeichnis '/home/ubuntu/fpc240/compiler/utils'
> /usr/bin/install -m 755 -d /tmp/fpc-pack/lib/fpc/2.4.0
> /usr/bin/install -c -m 755 ppcross386
> /tmp/fpc-pack/lib/fpc/2.4.0/ppcross386
> /usr/bin/install: Aufruf von stat für „ppcross386“ nicht möglich: No
> such file or directory
> make[6]: *** [quickinstall] Fehler 1
> make[6]: Verlasse Verzeichnis '/home/ubuntu/fpc240/compiler'
> make[5]: *** [compiler_install] Fehler 2
> make[5]: Verlasse Verzeichnis '/home/ubuntu/fpc240'
> make[4]: *** [installbase] Fehler 2
> make[4]: Verlasse Verzeichnis '/home/ubuntu/fpc240'
> make[3]: *** [install] Fehler 2
> make[3]: Verlasse Verzeichnis '/home/ubuntu/fpc240'
> make[2]: *** [fpc_zipinstall] Fehler 2
> make[2]: Verlasse Verzeichnis '/home/ubuntu/fpc240'
> make[1]: *** [zipinstall] Fehler 2
> make[1]: Verlasse Verzeichnis '/home/ubuntu/fpc240'
> make: *** [crosszipinstall] Fehler 2

Please note that this is the output of a second run of the compiler.
The first run was a

make clean; make crosszipinstall OS_TARGET=linux CPU_TARGET=i386

I examined the complete output for errors, but I found nothing.

I read the buildfaq and a lot of other docs, but I found no solution.
How can I build the compiler to "crosscompile" to Linux i386 on
Linux i386 ? And how can I build a crosscompiler running on
Linux i386 compiling for Linux X64 ?
Could anybody help me getting on track again ?

Thanks for your help

Hartmut Eilers                          <hartmut at eilers.net>
http://www.openmsr.org/            http://www.eilers.net

More information about the fpc-pascal mailing list