BuildEABIChroot

Differences between revisions 1 and 2
Revision 1 as of 2009-07-17 12:32:09
Size: 1511
Editor: p5098ed03
Comment:
Revision 2 as of 2009-07-17 12:34:04
Size: 1630
Editor: p5098ed03
Comment:
Deletions are marked like this. Additions are marked like this.
Line 28: Line 28:
Line 29: Line 30:
Line 36: Line 38:
Now you can build/test packages etc, the chroot works like any other x86 chroot on your system as long as you have the qemu-arm-eabi package installed. Now you can build/test packages etc, the chroot works like any other x86 chroot on your system as long as you have the qemu-arm-eabi package installed with the advantage that you can make use of all resources your host system provides (CPU speed, RAM, diskspeed etc)

The binfmt-misc module in the kernel makes it possible to execute binaries of foreign arches under linux. Qemu uses this fact to enable several architecture specific execution environments. Sadly arm EABI support is not among them.

A patch for qemu exists at http://qemu-arm-eabi.sourceforge.net/ to enable EABI support in qemu-arm. To make use of this feature to build chroots, qemu needs to be built as a static binary. A binary package called qemu-arm-eabi exists in the PPA below that contains such a static binary, enables the binfmt configuration and ships a wrapper script to debootstrap called build-arm-eabi-chroot.

To use an arm eabi enabled chroot on your i386/amd64 system, add the entry below to /etc/apt/sources.list ...

deb http://ppa.launchpad.net/ogra/ppa/ubuntu karmic main

Install qemu-arm-eabi ...

sudo apt-get update
sudo apt-get install qemu-arm-eabi

And create the chroot with the included debootstrap wrapper script (it takes/requires the same options debootstrap uses)

ogra@osiris:~$ build-arm-eabi-chroot karmic eabi-chroot
[sudo] password for ogra: 
I: Retrieving Release
I: Retrieving Packages

...

I: Base system installed successfully.
arm-eabi chroot successfully created in eabi-chroot
ogra@osiris:~$ sudo chroot eabi-chroot
root@osiris:/# uname -m
armv5tel

Now you can build/test packages etc, the chroot works like any other x86 chroot on your system as long as you have the qemu-arm-eabi package installed with the advantage that you can make use of all resources your host system provides (CPU speed, RAM, diskspeed etc)

ARM/BuildEABIChroot (last edited 2016-08-17 22:35:01 by mariogrip)