Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2010-12

is cross compilation broken?

4 messages · 2 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Andrew Haines

Hi,

Is cross compilation broken?

If I execute this command:

make crossinstall CPU_TARGET=arm OS_TARGET=linux
CROSSBINDIR=/home/user/lazarus/fpc/binutils/ OPT=-dFPC_ARMEL INSTALL_PREFIX=/usr

(which I know would fail about the paths not being right)

the result is:

make install CROSSINSTALL=1
make[1]: Entering directory `/home/andrew/programming/fpc' make compiler_cycle RELEASE=1
make[2]: Entering directory `/home/andrew/programming/fpc' make -C compiler cycle
make[3]: Entering directory `/home/andrew/programming/fpc/compiler' Makefile:3582: *** recipe commences before first target. Stop. make[3]: Leaving directory `/home/andrew/programming/fpc/compiler' make[2]: *** [compiler_cycle] Error 2
make[2]: Leaving directory `/home/andrew/programming/fpc' make[1]: *** [build-stamp.arm-linux] Error 2
make[1]: Leaving directory `/home/andrew/programming/fpc' make: *** [crossinstall] Error 2

I had the same result trying to crosscompile to ppc386 from ppcx64.

Regards,

Andrew Haines

Reply by email

Jonas Maebe
to Andrew Haines
Andrew Haines wrote
Is cross compilation broken?

Not any more or less than it was in the past.

make[3]: Entering directory `/home/andrew/programming/fpc/compiler' Makefile:3582: *** recipe commences before first target. Stop.

That's probably an incompatibility with make 3.81.9 and later. Try staying with make 3.81 for now.

Jonas

Reply by email

Andrew Haines
to Jonas Maebe
Jonas Maebe wrote 11 lines
On 17 Dec 2010, at 18:48, Andrew Haines wrote: > Is cross compilation broken? Not any more or less than it was in the past. > make[3]: Entering directory `/home/andrew/programming/fpc/compiler' > Makefile:3582: *** recipe commences before first target. Stop. That's probably an incompatibility with make 3.81.9 and later. Try staying with make 3.81 for now.

Hi, the attached patch seems to fix the problem.

Regards,

Andrew

Reply by email

Jonas Maebe
to Andrew Haines
Andrew Haines wrote
Hi, the attached patch seems to fix the problem.

The meaning of the Makefile after the patch is different from what it was before. Your patch sets a shell environment variable, while the Makefile currently sets a Makefile variable. I think that if the "FPC=" is added as part of the $(MAKE) commands (i.e., after the $(MAKE) instead of before it) it may be the same, but that depends on whether or not the $FPC variable is still used after those commands.

Jonas

Reply by email