[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Crush cannot support building packages.



On Thu, 4 Jun 2009 12:40:14 -0300
Amandeep Bhullar <arm.debian@gmail.com> wrote:

(best to keep the list in CC:)

> Many thanks for the reply.
>
> 1. When you say I "need to cross-build for Crush on a standard Debian
> desktop using emdebian-tools", does that mean that fater doing so I will be
> able to run gcc,g++ on my target running Emdebian.

You will be able to run the binaries built by running arm-linux-gnu-gcc
on your desktop, via emdebian-tools.  There is no way that Crush will
support native compilation, it is a binary-only distribution.

However, this will only work if you can use the packages from Lenny
to provide the cross-dependencies.

Crush 1.0 is a proof-of-concept - a test case. What the proof showed
was that the system to generate Crush required extensive changes to
make it suitable for Crush 2.0. :-(

The changes are sufficiently complex that there is a chance Crush might
not make a 2.0 release at all.

See http://wiki.debian.org/EmdebianCodeAudit

> Can you provide a lead on
> how to cross-build gcc using emdebian-tools on my desktop and then being it
> on arm target.

No, you run the cross-compiler on your desktop - install the toolchains
that already exist. Then you use the cross compiler (arm-linux-gnu-gcc
from the gcc-4.3-arm-linux-gnu package) using emdebian-tools to
cross-build packages for Crush. Copy the built packages across, install
them with their dependencies (which you will also need to cross-compile
on the desktop) and those binaries will then run on Crush. What will
most likely *not* run on Crush is gcc itself - certainly there are no
support packages like automake or perl to actually build the packages
on Crush.

However, the problem will be that as Debian dropped the ARM port after
Lenny, you will only be able to obtain the cross dependencies for the
packages already released in Lenny which make things more difficult.
The patches used to build those packages are being updated to fit with
the versions of those packages in unstable, in preparation for building
armel packages for Crush, so most will no longer apply to the versions
from Lenny.

At this time, there is little chance of cross-building anything new for
Crush 1.0. It is what it is and cannot easily bear expansion until a
lot more work is done to prepare for Crush 2.0 on armel. There will be
no further updates of Crush 1.0 on ARM, only as 2.0 on armel and
(hopefully) other architectures. There is also likely to be very little
compatibility between Crush 1.0 (ARM) and Crush 2.0 (armel) because
various functional changes need to be made in the packages. This isn't
a particular problem as you cannot easily convert an existing ARM
installation into armel without reinstalling.

> 2. the command shows right sources here"
> # cat /etc/apt/sources.list.d/emdebian.sources.list
> #emdebian target repository : default source list
> # created by emsandbox
> deb http://www.emdebian.org/crush/ unstable main
> deb-src http://www.emdebian.org/crush/ unstable main

That doesn't look like the apt source you quoted first time around,
but it is the right one for the device running Crush. There is no
difference between unstable and stable at the moment, but when packages
start being uploaded for Crush 2.0, all packages for ARM will be
removed from unstable. Only stable (lenny) will retain ARM packages.
Once Squeeze is released, Crush 2.0 can be released if it is ready. At
that point, ARM packages will disappear for good, only armel will be
supported. The changes being made are in order to support a wider range
of architectures in Crush but whether everything will be ready in time
for Squeeze is currently uncertain.

There are no usable packages for gcc in that repository and no
complete list of build dependencies either.
 
> Why wont it use the right ones for apt-update? :(

Because the packages do not exist for Crush and cannot exist until a
lot more work is done in Debian for cross-build support.

-- 


Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/

Attachment: pgp41i9NcfYFy.pgp
Description: PGP signature


Reply to: