1
How to test build using Aboriginal Linux system images.
3
* Put a source tree into hdc.dir/.
4
For example, this should work:
5
git clone git://busybox.net/var/lib/git/busybox.git
7
* Run ./make-hdc-img.sh: it will generate ext2 image file,
8
hdc.img, from hdc.dir/* data. This requires root for loop mount.
10
* Download and unpack, or build from source and unpack
11
one or more system-image-ARCH directories into this directory
12
(the one which contains this README).
14
* Run: ./parallel-build-hdc-img.sh system-image-DIR1 system-image-DIR2...
15
(background it if you don't want to see "Waiting to finish" thing).
16
This runs build in several qemu virtual machines in parallel.
18
* Observe system-image-*.log file(s) with growing log of the build.
20
There is no automated detection of errors for now: you need to examine
23
Log files will also contain uuencoded (or if all else fails, od -tx1'ed)
24
binary, if build was successful.
26
To debug a build problem in one of the sandboxes, change keep_hdb
27
to "keep_hdb=true" in parallel-build-hdc-img.sh
28
- this preserves system-image-ARCH/hdb.img after the build,
29
so you can go into system-image-ARCH and run
30
"HDB=hdb.img ./dev-environment.sh" to debug the problem.
32
You can also run "./parallel-build-hdc-img.sh -s system-image-ARCH"
33
- single mode, output is to screen and serial input is from keyboard.
35
If hdc.dir/bin/busybox-$ARCH exists, it will be used during build
36
to supply additional tools.
38
For me, the following system images worked:
43
# echo Hello-hello-hello-hello | od -b
44
0000000 110 145 154 154 157 055 150 145 154 154 157 055 150 145 154 154
45
0000000 157 055 150 145 154 154 157 012
50
od is buggy on mips[el]:
51
# echo Hello-hello-hello-hello | od -b
52
0000000 110 145 154 154 157 055 150 145 154 154 157 055 150 145 154 154
53
17767153361 157 055 150 145 154 154 157 012
58
system-image-armv6l - hang on "Uncompressing Linux... done, booting the kernel"
59
system-image-powerpc - hang early in kernel boot
60
system-image-sparc - hang early in userspace
61
system-image-m68k - my qemu doesn't like "-M q800"
62
system-image-mips64 - init dies "Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000a"
63
system-image-sh4 - qemu segfaults early in kernel boot