Difference between revisions of "EBC Exercise 08a Cross-Compiling"

From eLinux.org
Jump to: navigation, search
m (Step 1 - get Open Embedded metadata)
m (Step 2 - Setting up for the BeagleBoard)
Line 31: Line 31:
 
== Step 2 - Setting up for the BeagleBoard ==
 
== Step 2 - Setting up for the BeagleBoard ==
  
We need a small script to setup the environment, so download source-me.txt [[http://www.rose-hulman.edu/~yoder/eLinux/files/source-me.txt] to ${OETREE}.
+
We need a small script to setup the environment, so download <code>source-me.txt</code> [[http://www.rose-hulman.edu/~yoder/eLinux/files/source-me.txt] to ${OETREE}.
  
 
Now let's setup <code>local.conf</code> for our needs:
 
Now let's setup <code>local.conf</code> for our needs:

Revision as of 14:25, 2 March 2010

This class is about developing software for embedded Linux. The eLinux site [[1]] is a good source for embedded Linux in general. There are many on going embedded efforts going on many platforms. Poke around the site a while to get a feel for what's happening.

We are going to use the Ångström Distribution [[2]]. It's available many platforms. Look around the site, you may recognize some of them.

Instructions for building Ångström are given here [[3]]; however I'm going to present a Beagle-tuned version of those instructions on this page.

Step 1 - get Open Embedded metadata

First install git by running the following on your host computer.

sudo apt-get install git-core

Then run the following to load the meta data.

export OETREE="${HOME}/oe"
mkdir -p ${OETREE} && cd ${OETREE}
git clone git://git.openembedded.org/openembedded.git openembedded
cd openembedded
git checkout origin/stable/2009 -b stable/2009

The first git transfers some 336,000 object and takes about 18 minutes with the network running at 600 some KiB/s. Keep an eye on it, mine stopped about 23% in and I had to restart it. The second git takes XXX.

Now run the following to update the metadata:

cd ${OETREE}/openembedded 
git pull

You've created a directory called oe. Go explore around it to see what is there.

Step 2 - Setting up for the BeagleBoard

We need a small script to setup the environment, so download source-me.txt [[4] to ${OETREE}.

Now let's setup local.conf for our needs:

mkdir -p ${OETREE}/build/conf
cp ${OETREE}/openembedded/contrib/angstrom/local.conf ${OETREE}/build/conf/

Open ${OETREE}/build/conf/local.conf in your favourite editor and add:

MACHINE ?= "beagleboard" 

Step 3 - Start building

# set environment variables
source source-me.txt 

#Go to the OE tree
cd ${OETREE}/openembedded 

#Make sure it's up to date
git pull --rebase

#Start building
bikebake nano
  1. you can specify machine on the cmdline:

MACHINE=yourmachine bitbake base-image ; MACHINE=yourmachine bitbake console-image x11-image

  1. If you have set it in local.conf you can do:

bitbake base-image ; bitbake console-image x11-image