« Previous - Version 13/24 (diff) - Next » - Current version
Dave Täht, 04/30/2012 09:13 am


Building Cerowrt on your own Linux machine

These instructions should work with the 11.10 Ubuntu.

Prerequisites

You need some packages that you may download the sources. Then you need some build dependencies to be satisfied. And you need to download the sources. The following commands does some of these.

sudo apt-get install git subversion build-essential flex libncurses5-dev libz-dev gawk gettext
mkdir -p ~/src/cerowrt
cd ~/src/cerowrt
git clone git://github.com/dtaht/cerofiles-3.3.git

There will be a build_cero.sh script in that checkout. There is also a cero_config file here. Copy cero_config to ~/.cero and then edit it to suit your preferences.

cp cerofiles-3.3/cero_config ~/.cero
vim ~/.cero # use the editor you are comfortable with

This example assumes the use of folder ~/src/cerowrt as main directory so you should change the CERO_DIR variable to

CERO_DIR=~/src/cerowrt

then run

~/src/cerowrt/cerofiles-3.3/build_cero.sh init
cd ~/src/cerowrt
make # But please see note below for an extra step while kernel.org is down

The first time you run this it will take a VERY long time to build the toolchains, etc. I have generally found -jX to fail on large numbers of processors, so just build it in series and go to a long dinner or lunch. Or...

make -jX
make V=s

Subsequent runs will be much faster, and -jX usually works AND:

NOTE With kernel.org down it is impossible to get a build to summon and compile all the needed packages. There is a temporary mirror of the needed packages available via rsync. Inside the build dir above:

 
mkdir dl; cd dl; rsync -av huchra.bufferbloat.net::dl .

(this is a temporary expedient)

Check your build

If the wndr3700's bin/ar71xx/ has images that are less than 5MB, you didn't get a good .config file, and/or some major packages are missing, and/or

Your final images should be about the same size as on huchra.

Lastly:

Given that this builds most of cerowrt against the main git head trees, your build will differ somewhat from what we are making available as release candidates at present. After we get stable, we will tag and freeze the relevant trees.

We note that due to this difference, there may be slight (or even major) differences in the default .config file. It helps to repeatedly cp env/.config onto .config and run make defconfig, and install packages, etc, until they more closely match.

We will improve this script as time goes on, and if you run into trouble, please contact the #bufferbloat irc channel and/or the mailing lists.

changing your cerowrt ip addresses changing your dns domain