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

Re: Cross-compiling debian packages for arm - an automated way?

+++ Neil Williams [2013-08-13 10:12 +0100]:
> On Tue, 13 Aug 2013 10:36:02 +0300
> Vladimir Vitkov <vvitkov@linux-bg.org> wrote:
> > The box targeted (for built packages) is Raspberry Pi (armv6
> > hardfloat), but unfortunately it is not beefy enough to do the
> > compile on it, in a sensible time and repeatable manner.
> ARMv6 hardfloat != Debian armhf. All armhf processing in Debian and
> Emdebian is ARMv7 only. ARMv6 has to make do with ARMv5 code as armel.
> Don't reinvent Raspbian - Emdebian cannot help with anything related to
> ARMv6. Find a different board - I'd recommend a BeagleBone Black. Much,
> much more capable & reliable than the Pi and similar price point - it's
> ARMv7 and runs armhf properly.

Or a cubieboard, but he probably already made this choice and is stuck
with trying to get stuff to work.

> > I will be glad for any pointers how to setup a crosscompile system
> > that can do the following:
> >  * Run on x86_64
> >  * be able to compile for armhf
> Raspberry Pi is not armhf. 

More accurately, RPi _is_ armhf, but with a different default ISA
(like i386 vs i486 vs i586, which are all 'i386' in debian-speak).

The default ISA is set by the crosstoolchain, not the debian
architecture. Rebuilding your crosstoolchain to default to Rasbian
(ARMv6+vfp2 ISA) settings (probably easiest to use whatever
cross-toolchain packages they provide), will mean that you can compile
suitable packages.

Unfortunately no-one has done the work to record target ISA in .deb
metadata so you can't easily tell if an 'armhf' package is built for
armv6 or armv7. I've thought we should fix this for years, and the
ubiquity of RPi's makes this more pressing. 

Principal hats:  Linaro, Emdebian, Wookware, Balloonboard, ARM

Reply to: