Difference between revisions of "LinuxInstall"

From ArmadeusWiki
Jump to: navigation, search
(Get Armadeus software)
m (Configure SDK options)
Line 38: Line 38:
  
 
==Configure SDK options==
 
==Configure SDK options==
 +
The first time you compile an armadeus directory you have to specify the target to work with.
 
  $ cd armadeus/
 
  $ cd armadeus/
  $ make menuconfig (or just make the first time).
+
  $ make '''apf9328_defconfig'''
This will launch Buildroot configuration. [[Image:Menuconfig.jpg]]<br>
+
 
 +
This command reloads the default configuration to support an apf9328 board and start automatically a configuration menu.
 +
 
 +
At any time you can reload the default configuration with '''apf9328_defconfig'''
 +
 
 +
'''previous versions of Armadeus and software releases 2.x did not support the command make apf9328_defconfig. make or make menuconfig were the reference commands.'''
 +
 
 +
It is possible to change the armadeus configuration at any time using the command '''make menuconfig'''
 +
$ make menuconfig
 +
 
 +
This will launch Buildroot configuration.<br>
 +
[[Image:Menuconfig3.png]]<br>
 
If you are not familiar with Buildroot here are some tips:
 
If you are not familiar with Buildroot here are some tips:
 
* you can move the highlighted item with the "up"/"down" arrow keys
 
* you can move the highlighted item with the "up"/"down" arrow keys
Line 50: Line 62:
 
* for more Help about Buildroot commands, select "Help" in the main configuration screen
 
* for more Help about Buildroot commands, select "Help" in the main configuration screen
 
<br>
 
<br>
In ''Target options  ---> Armadeus Device Support'' menu, select your Armadeus board (apf/apm9328), the RAM size (16/32MB) and so on... '''Default values should be fine if you have an APF9328 with 8Mbytes FLASH'''
+
In ''Target options  ---> Armadeus Device Support'' menu, you can check and change the quantity of RAM available on your Armadeus board (apf9328). (Default value: 16MB is just fine with all APF9328 boards).
 +
 
 +
<b>In Target filesystem options --> for each type of filesystems to build you have the option to copy the binary file to secondary location like your tftp server folder (for exemple /tftpboot).</b>
 +
 
 +
<b>In Target filesystem options --> You will find U-Boot options at the end of this menu including the option to copy U-Boot to a secondary location like /tftpboot</b>
 +
 
 +
<b>In Kernel --> Destination for linux kernel binaries --> You will find options to copy linux to a secondary location like /tftpboot</b>
 +
 
 
* You may decrease the compilation time by increasing the number of parallel jobs running simultaneously on your system (the result is not guaranteed). This option is located in ''Build Options ---> (1) Number of jobs to run simultaneously'' menu.
 
* You may decrease the compilation time by increasing the number of parallel jobs running simultaneously on your system (the result is not guaranteed). This option is located in ''Build Options ---> (1) Number of jobs to run simultaneously'' menu.
 
* The toolchain is built automatically. During this procedure, several files are downloaded from Internet. The downloaded files are put by default in the ''armadeus/downloads/'' directory. '''If you have several views or plan to build the toolchain several times, we advise you to put all the downloaded files in ''/local/downloads'' (for example). This is done by configuring Buildroot to use this directory for all your views: ''Build options  ---> Download dir''.''' <br>
 
* The toolchain is built automatically. During this procedure, several files are downloaded from Internet. The downloaded files are put by default in the ''armadeus/downloads/'' directory. '''If you have several views or plan to build the toolchain several times, we advise you to put all the downloaded files in ''/local/downloads'' (for example). This is done by configuring Buildroot to use this directory for all your views: ''Build options  ---> Download dir''.''' <br>

Revision as of 16:24, 6 December 2008

How-To install Armadeus Software Development Kit (SDK) on Linux systems.

The installation was successfully tested on the following distributions:

  • Debian Sarge & Etch
  • Fedora Core 3 & 4
  • SuSE 10.1
  • Ubuntu Dapper Drake (6.04)
  • Kubuntu & Xubuntu Edgy Eft (6.10)
  • KUbuntu Gusty Gibbon (7.10)
  • KUbuntu Hardy Heron (8.04)
  • Mandriva 2006


Prerequisites for Linux installation

Depending on your distribution, some additional packages are required. For Debian based system, you can use the following command to get them:

$ sudo apt-get install autoconf automake bison flex g++ gettext libncurses5-dev liblzo1 liblzo-dev liblzo2-2 liblzo2-dev \
               patch subversion texinfo wget zlib1g-dev libacl1 libacl1-dev libtool

For Ubuntu based systems, the following is now required if your /bin/sh is not pointing to /bin/bash:

$ ls -al /bin/sh
lrwxrwxrwx 1 root root 4 2007-12-08 18:33 /bin/sh -> dash
$ sudo ln -sf /bin/bash /bin/sh
$ ls -al /bin/sh
lrwxrwxrwx 1 root root 9 2008-11-04 18:10 /bin/sh -> /bin/bash

Get Armadeus software

  • If you are a "carefull" user:

then download the latest stable installation tarball from SourceForge: http://sourceforge.net/projects/armadeus and detar it wherever you want.

$ tar xjvf armadeusArchiveName.tar.bz2
  • If you are a hacker or a registered developper, check out the required files from the SVN repository:
$ svn co https://armadeus.svn.sourceforge.net/svnroot/armadeus/trunk armadeus

A directory named armadeus/ will be created on your hard-disk and will contain all the files you need.

Remarks:

Configure SDK options

The first time you compile an armadeus directory you have to specify the target to work with.

$ cd armadeus/
$ make apf9328_defconfig

This command reloads the default configuration to support an apf9328 board and start automatically a configuration menu.

At any time you can reload the default configuration with apf9328_defconfig

previous versions of Armadeus and software releases 2.x did not support the command make apf9328_defconfig. make or make menuconfig were the reference commands.

It is possible to change the armadeus configuration at any time using the command make menuconfig

$ make menuconfig

This will launch Buildroot configuration.
Menuconfig3.png
If you are not familiar with Buildroot here are some tips:

  • you can move the highlighted item with the "up"/"down" arrow keys
  • with the "left"/"right" arrow keys you can choose between "Select", "Exit" or "Help" buttons
  • "space"/"enter":
    • selects the currently highlighted item if you are on the "Select" button
    • go back in previous menu if you are on "Exit" button
    • show you some Help for current item if you are on "Help" button
  • for more Help about Buildroot commands, select "Help" in the main configuration screen


In Target options ---> Armadeus Device Support menu, you can check and change the quantity of RAM available on your Armadeus board (apf9328). (Default value: 16MB is just fine with all APF9328 boards).

In Target filesystem options --> for each type of filesystems to build you have the option to copy the binary file to secondary location like your tftp server folder (for exemple /tftpboot).

In Target filesystem options --> You will find U-Boot options at the end of this menu including the option to copy U-Boot to a secondary location like /tftpboot

In Kernel --> Destination for linux kernel binaries --> You will find options to copy linux to a secondary location like /tftpboot

  • You may decrease the compilation time by increasing the number of parallel jobs running simultaneously on your system (the result is not guaranteed). This option is located in Build Options ---> (1) Number of jobs to run simultaneously menu.
  • The toolchain is built automatically. During this procedure, several files are downloaded from Internet. The downloaded files are put by default in the armadeus/downloads/ directory. If you have several views or plan to build the toolchain several times, we advise you to put all the downloaded files in /local/downloads (for example). This is done by configuring Buildroot to use this directory for all your views: Build options ---> Download dir.

Build config menu download.png

Build config download.png

We advise you too to burn a CD-Rom with all the files in downloads/ in case you want to install the development tools on several systems.

  • Exit the configuration tool and save your configuration

Launch build

$ make

The toolchain is built automatically. During this procedure, several files are downloaded from Internet. Please wait for a while.... it takes at least one hour for the first run!
The downloaded files are put by default in the armadeus/downloads/ directory. If you have several views we advise you to put all the downloaded files in /local/armadeus/downloads (for example) by configuring Buildroot to use this directory for all your views: Build options ---> Download dir.
We advise you too to burn a CD-Rom with all the files in downloads/ in case you want to install the development tools on several systems.

Enjoy the result

The generated binary files can be found in the subdirectory buildroot/binaries/armadeus/:

  • u-boot.brec (BRecord image that can be used with the bootstrap, if U-Boot is not installed or not working, see BootLoader page)
  • u-boot.bin (U-Boot image file for use with U-Boot itself, see updating U-Boot)
  • linux-kernel-2.6.xx-arm.bin (Linux image to use with U-Boot, see InstallLinux)
  • rootfs.arm.jffs2 (FileSystem/RootFS image to use with U-Boot, see RootFS flashing)
  • rootfs.arm.tar (for an NFS/MMC RootFS, see RootNFS? & Booting from a MMC/SD)

To keep your copy up-to-date with the armadeus SVN repository

$ svn update

This will update your working directory to the latest release.

Note: if "svn update" fails because a directory or a file already exists, then do:

$ rm -rf <this-directory/file>
$ svn update

You can do a:

$ make defconfig

to have the latest features automatically activated and a

$ make menuconfig

to set again your personnal parameters (SDRAM size...).

You have to do a make to rebuild binary files and then upload the binary files to your target.

Note: if definitively everything goes wrong while it worked before the last update. You can apply the following procedure (all your modifications in buildroot will be lost):

$ rm -rf buildroot/
$ rm Makefile
$ svn update
$ make
$ make

Enjoy!


FrenchFlag.png Cette page en français