[fpc-pascal] installing cross fpc in parallel to systems fpc

Marc Santhoff M.Santhoff at web.de
Fri Nov 10 18:57:19 CET 2017


On Fr, 2017-11-10 at 18:25 +0100, Mattias Gaertner wrote:
> On Fri, 10 Nov 2017 17:47:11 +0100
> Marc Santhoff <M.Santhoff at web.de> wrote:
> 
> > Hi again,
> > 
> > (too many sub threads, answering here - thanks to all helpers!)
> > 
> > OK, "$FPC -va | grep CPU" does the trick. If using the ppcrossarm:
> > 
> > marc at puma:/home/marc/program/fpc-cross/src/fpc/compiler > ./ppcrossarm -va|grep CPU
> > [0.004] Macro defined: CPUARMEL
> > [0.004] Macro defined: FPC_CPUCROSSCOMPILING
> > [0.004] Macro defined: CPUARM
> > [0.004] Macro defined: CPU32
> > [0.004] Macro defined: CPUINT32
> > [0.020] interpreting file option "#IFNDEF CPUI386"
> > [0.020] interpreting file option "#IFNDEF CPUAMD64"
> > 
> > See, an arm compiler. But when using the ppc binary in the same dir it
> > looks different. Here we go:
> > 
> > marc at puma:/home/marc/program/fpc-cross/src/fpc/compiler > ./ppc -va | grep CPU
> 
> What is ppc?
> Where is fpc?

That happens in the directory of a built but not yet installed cross
compiler. The build command following those instructions:

http://j-software.dk/stm32f103.php

was:

gmake clean buildbase installbase CROSSINSTALL=1 CROSSOPT="-XParm-elf-"
OS_TARGET=embedded CPU_TARGET=arm SUBARCH=armv7m PREFIX=../../fpc-arm

IIRC. But actually the path from the PREFIX does not exist. Sth. to
investigate or redo for me.

> 
> > Next question is how to get started with lazarus and multiple compilers.
> > How do you do it, using configuration files for lazarus and starting
> > like "lazarus --primary-config-path= <path>"? Or are there other
> > possibilities to try?
> 
> Lazarus supports multiple compilers.
> You can either use fpc and switch the target OS and /or processor.

That solution isnt't doable, that would require a compiler for X86_64
and ARM.

> Or you can switch the compiler binary: Project / Project Options /
> Compiler Options / Compiler Command. Replace the default
> value '$(CompPath)' with the path.

Aha, OK.

> You can use build modes to switch with a mouse click between various
> sets of compiler options.

Beautiful, may take a while to get there, but very handy. :)

Marc




More information about the fpc-pascal mailing list