Fun With Build Root
From arrizza.org wiki
Jump to navigation Jump to searchSee http://buildroot.net/downloads/buildroot.html
Start Point
Start from clean ubuntu 10.04 installation
* assume 10.04 LTS installed * with updates from 11/17/2010 or later
Install It
* install dependencies
[
sudo apt-get -y install g++ sudo apt-get -y install bison sudo apt-get -y install flex sudo apt-get -y install gettext sudo apt-get -y install texinfo sudo apt-get -y install git-core sudo apt-get -y install subversion sudo apt-get -y install lib64ncurses5-dev (for 64-bit machines)
]
* install build-root
[
git clone git://git.buildroot.net/buildroot
]
* cd buildroot
Configure It
* make menuconfig * select Target Arch: armeb * select Arch variant: generic_arm * Target ABI : EABI * Target Options: * System Hostname; johna * System Banner: Welcome to johna * Generic serial port config: select it and type a "*" * Serial port to run getty on: ttyS0 * Baudrate : 115200 * Build Options * Download dir: $(TOPDIR)/dl * Toolchain location: $(BASE_DIR)/staging * Mirrors and download locations: * http://sources.buildroot.net * easynews * http://www.kernel.org/pub/ * http://ftp.gnu.org/pub/gnu * http://ftp.debian.org * Number of jobs: 6 (2 * (# of processors - 1)) * Show packages that are deprecated or obsolete: put a star * build packages with debugging symbols: no star * strip: strip * gcc optimization level: optimize for size * prefer static libraries: no star * doc on the target: no star * dev files in target: no star * Toolchain * toolchain type: buildroot toolchain * kernel header options: 2.6.36.x kernel headers * uClibc config file: toolchain/uClibc/uClibc-0.9.31.config * uClibc version: 0.9.31.x * Thread Library debugging: no star * Compile and install uClibc tests: no star * Binutils version: binutils 2.20.1 * Additional binutils options: blank * gcc compiler version : gcc 4.3.x * addional gcc optons: none * objective c cross-compiler support: no star * build install fortran compiler and runtime: no star * build install shared libgcc : add star * fortran cross-compiler support: no star * build install objective-C compiler and runtime: no star * enable ccache supprt: no star * build gdb server for target: no star * build gdb for the host: no star * enable large file support : no star * enable IPv6: no star * enable RPC : no star * enable toolchain locale/i18n support: add star * enable purge unwanted locales: add star * locales to keep: (C en_US de fr) * enable WCHAR support: add star * use software floating point: add star * enable stack protection support: no star * thread library imp: linuxthreads (stable/old) * enable program invocation name: no star * build/install c++ compiler & libstdc + +: add star * target optimizations: -pipe * run mklibs on build root fs: no star * install sstrip for the target system: no star * include target utils in cross toolchain: add star * Package selection: leave defaults * Target filesystem: leave defaults * Bootloaders: * Barebox: no star * U-boot: add star * board name: johna * patch dir : no star * mkimage : add star * fq_printenv tool : no star * network settings: * server: 10.20.0.115 * ip addr: 10.20.0.130 * gateway: 10.20.0.1 * netmask: 255.255.255.0 * MAC : 04:25:FE:ED:00:18 * Kernel * Linux Kernel : add star * Kernel Version: 2.6.32 * kernel patch: blank * kernel config: using defconfig * defconfig name: johna * kernel binary format: uImage * Save the configuration * create the defconfig file:
[
make defconfig
]
Build It
* download all the source needed (takes <10 minutes)
[
make source
]
* build it (takes ?? minutes)
[
make
]