Cross-build OS images for ARM targets

Registered by Steve Magoun

Ensure that an i386 or amd64 host can build OS images for an ARM target using live-build.

ARM systems often have limited memory and limited I/O bandwidth. This limits the speed of package download and installation, which are 2 major components of the image creation process. Creating the installation artifact (tarball, .ISO, disk image, etc) also requires significant CPU and I/O bandwidth. It can take 90 minutes or more to create an image of a desktop environment on an ARM system (Babbage or Pandaboard-class hardware).

Building the image in a tmpfs on a modern server-class machine with adequate RAM can cut image creation time by an order of magnitude over existing ARM target boards.

Our primary target use cases:
1) Building software images for installation and execution on an ARM target
2) Building test images to ensure that packages are installable in an ARM environment

Linaro have done some work to add cross-build support to live-build 3.0:
https://wiki.linaro.org/LiveHelper/Cross

Linaro's work has gone upstream into live-build 3.0 trunk. We need to ensure that the upstream support for cross-live-build is available and functional for building Ubuntu ARM images in Ubuntu 12.04 LTS.

Blueprint information

Status:
Not started
Approver:
Steve Langasek
Priority:
Medium
Drafter:
Steve Magoun
Direction:
Approved
Assignee:
Adam Conrad
Definition:
Approved
Series goal:
Accepted for precise
Implementation:
Unknown
Milestone target:
milestone icon precise-alpha-2

Related branches

Sprints

Whiteboard

[adconrad] Merge live-build 3.0~a35-1 or newer from Debian to gain cross-live-build support
[adconrad] Create and execute tests to ensure that cross-built images contain the same bits as natively-build images
[adconrad] Benchmark cross-build vs native builds
[adconrad] Create cross-build usage documentation for wiki.ubuntu.com

(?)

Work Items