Buildroot

Buildroot es una herramienta que nos facilita enormemente la tarea de contruir nuestras toolchains.
Buildroot, soporta la mayoría de las arquitecturas, automáticamente descarga los archivos fuentes y aplica los parches, es fácil y muy parecida a la configuración y compilación del kernel de linux

0.- Dependencias

  • build-essential
  • libncurses5-dev
  • bison
  • flex
  • gettext
  • bzip2

apt-get install build-essential libncurses-dev bison flex texinfo zlib1g-dev gettext openssl-dev

1.- Configuración

make menuconfig

Luego del comando previo se deben seleccionar las diferentes configuraciones, fig 1 .

buildroot

El menú principal posee varias opciones que a su vez incluyen submenúes, veamos la estructura general y algunas de las opciones de los submenúes.

Menu

  • Target arquitecture
    • arm
    • i386
    • mips
    • mipsel
    • powerpc
    • sparc
    • x86_64
  • Build options
    • Toolchain and headers file location
  • Toolchain type
    • Buildroot toolchain
    • External toolchain
  • Toolchain options
    • Kernel headers options (versión)
    • Binutils options (versión, native POSIX threading)
    • Gcc options (versión, install a share libgcc)
    • Ccache options
    • Gdb options
    • elf2flt
    • Common toolchain options (install sstrip for the target, etc)
  • Package selection for target (busybox, networking)
  • Target options
    • Filesystem for the target device (ext2, cramfs)
  • Board support options
    • Amd specific device support
    • Generic system support

2.- Compilación

Basta el siguiente comando..

make

Buildroot utiliza un conjunto de Makefiles para contruir las toolchains, basandose en la librería uClibc, e incluso para contruir el sistema de archivos raíz (root filesystem).
Alguno de los mensajes que se muestran durante la compilación:

emiliano@pianobar:~/tesis/tesis/play/lab_buildroot/buildroot$ make
Checking build system dependencies:
CC clean:                                       Ok
CXX clean:                                      Ok
CPP clean:                                      Ok
CFLAGS clean:                                   Ok
INCLUDES clean:                                 Ok
wget --passive-ftp -P /mnt/tesis/tesis/play/lab_buildroot/buildroot/dl http://www.uclibc.org/downloads/toolchain/linux-libc-headers-2.4.31.tar.bz2
Petición HTTP enviada, esperando respuesta... 200 OK
100%[==================================================================>] 4.194.659     93.31K/s    ETA 00:00
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License