Sonic Alert 2.8 Clock Radio User Manual


 
5.3 Linux Support 20
5.3.6 Userland build tool
As mentioned b e fore, we at Boundary Devices use a variant of an older
version of the PTXDist tool to keep track of the cros s-c ompilation needs
for various libraries. This allows inter-library dependencies to be expressed,
and also allows the canonical source locations to be used during a build.
This should really be better documented, but the short and simple build
instructions are as follows.
$ wget http://boundarydevices.com/userland_20051126.tar.gz
$ tar zxvf userland_20051126.tar.gz
$ cd userland
$ make menuconfig
-- at a minimum, you’ll need to set an archive path to
a writable directory, and validate your kernel and toolchain
paths.
$ make cramfs
Note that this takes a while (over an hour on a typical machine), but
will result in a cramfs image being created in the userland/ directory.
Also note that installation of the [[tinylogin]] program requires privileges
to [[setuid root]]. Because of this, the makefile rules/tinylogin.mak uses the
[[sudo]] program. If you don’t have sudo installed, this process will fail.
If you do, you may see a password prompt very near the end of the build
process (while installing tinylogin into the root filesystem). To avoid this,
you can either set your [[sudo]] timeout to something large and perform a
sudo operation before kicking off the build, or do as I do and set it negative
(no timeout). For reference, refer to this document or [[man sudoers]].
The choice of cramfs is for illustration (and because it requires that
everything be compiled and installed). Refer to Section 5.3.8 for more de-
tails about the choices available and decisions you need to make regarding
deployment.
More specifically, the userland build tool is designed to allow repro-
ducible builds of entire userland filesystems and device nodes for embedded
Linux distributions.
The general flow of the make is as follows:
1. Configure the system through the kconf tool. This step produces a
file named .config in the userland directory.
You should save this file for future reference when you have a set of
choices that meet your needs. By saving it off to say good.config,
you can copy it back to .config and reproduce the build later.
2. Get the source code for each component. Since downloading all of
December 28, 2005 Revision 2.8