[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Release Aug 28
From: |
Fred Kiefer |
Subject: |
Re: Release Aug 28 |
Date: |
Sat, 28 Aug 2004 03:24:15 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040114 |
Hi Nicola,
this discussion is not really fair. I have here a cross compile
environment up and running, while you can only guess, what may be the
results of the commands you suggest
At least we seem to agree on a few things. To cross compile GNUstep
from i686-linux to arm-linux, for example, you need to first get a
GNUstep make usable on the i686 machine (You also need a crosscompiled
one, which will later be copied to the other machine, but on this see
below). And now we also agree that for building base (and other GNUstep
modules) you need to set --host and not just --target. If we keep on
making progress like this, we will sooner or later get cross compilation
working. :-)
You suggest to build make by specifing:
./configure --build=ix86-linux --host=ix86-linux --target=arm-linux
--disable-flattened
This results in the ix86 executables to be installed in the directory
System/Makefiles/arm/linux-gnu/. Not sure if this is the intended
behaviour, but this surely removes the need to change common.make. Here
I wanted to change the path for which_lib from HOST to BUILD, otherwise
an unusable executable would be found. But now with an ix86 executable
in the ARM directory things work.
We could stick with this behaviour, it is just a bit hard to explain.
When I try to compile the excecutables which_lib and user_home needed
later on the ARM machine now:
make distclean
./configure --build=ix86-linux --host=arm-linux --disable-flattened
make
make install
This would overwrite the above cleverly placed executables. So this step
should be left until the very end.
Than the next step is to source the GNUstep.sh and than to build
GNUstep base. Here you suggest
./configure --build=i686-linux --host=arm-linux
So far so good and it is great to finally agree on this. But now for me
the cross compilation gcc is no longer used, instead the standard system
gcc and ld get called. Here I must admit, that I don't understand why
this was working before, but now it is definitly broken. The
crosscompilation gcc, ld and so on get correctly detected by the
configure script.