Building the Root file system for Mars 200 using Buildroot

From Ambedded
Revision as of 18:46, 25 April 2016 by Desmond (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Here list the instructions for building the Root file system for Mars 200 using Buildroot.
Build system could be a Debian o Ubuntu PC, compatibility libraries for X86_32 may be needed if using a 64 bit distro.

First change to / directory, and create a folder for cross-compiler tools

cd /
mkdir /kerneltools
cd /kerneltools

Download the gcc cross-compiler from linaro

tar xf gcc-linaro-arm-linux-gnueabihf-4.8-2014.02_linux.tar.xz

and install the C Library

apt-get install lib32stdc++6

Now that we have a compiler able to create arm binaries, we can proceed to download the Buildroot source package to our working directory.

tar -xvzf buildroot-2016.02.tar.gz

Download mars200 Buildroot configuration file, for customizing the generated target file system. The configuration is based on the structure listed in "Chapter 9. Project-specific customization" of the Buildroot user manual. (


Two default configuration file (put in /buildroot-custom/configs) are provided in this package for reference. mars200_min_defconfig is used to generate a smallest root file system can be used on mars 200. mars200_defconfig is used to generate a root file system as the pre-built binary.

Kernel can be now customized, but we recommend NOT using loadable modules, because they will have to be later transferred to the base system, slowing down the install process.

make mvebu_mars200_defconfig
make menuconfig

Now the kernel can can be built

make zImage
make armada-385-mars.dtb

Here you will find the compiled kernel


and compiled dtb file


Rename armada-385-mars.dtb to dtb and upload them to Mars200 micro server following Install U-Boot, Linux Kernel and Root File System for Mars200 page.

Personal tools