Hi Rick,
You should check to see if you .bashrc file has some environment variables set that normally determine the compiler and library paths. Perhaps your installation is missing the development-libraries and development-tools packages?

Here is a technote that works with Fedora 10, 32-bit. 

Best regards,



This document describes how to setup a development environment for the Overo platform using a Fedora-10 VMware image.


Step 01.00: Install Fedora 10 into a VMware image.

Ensure that you install the following packages
- development-libraries
- development-tools

Create a new user group called ‘developers’. 

Change the primary group for all developers to the ‘developers’ group, e.g. for user ‘elvis’, change the primary group to ‘developers’.

Step 02.00: Enable root login.

Step 02.01: Login as a regular user

$ su
# vi /etc/pam.d/gdm

Click ‘A’ and remove user!=root from the following line

auth required pam_succeed_if.so user!=root quiet

Click Esc and then type the following command :wq

Step 02.03: Modify /etc/sysctl.conf to make vm.mmap_min_addr = 0.

# vi /etc/sysctl.conf

Add the following line to the sysctl.conf file
vm.mmap_min_addr = 0

Step 02.03: Relogin as root

Step 03.00: Install the vmware tools

$ su
# cd Download/vmware-tools-distrib
# ./vmware-install.pl

Step 04.00: Install Sun JDK 1.6

$ su
# cd Downloads/jdk-6u12-linux-i586
# ./jdk-6u12-linux-i586-rpm.bin

Step 05.00: Install Psyco JIT compiler

Step 05.01: Download Psyco JIT compiler sources from svn

$ svn co http://codespeak.net/svn/psyco/dist/ psyco-dist

Step 05.02: Run the python installation script as a super user 

$ su python setup.py install

Step 06.00: Download, build and install kermit

$ cd /tool
$ mkdir kermit
$ cd kermit
$ wget ftp://kermit.columbia.edu/kermit/archives/cku211.tar.gz
$ tar zxvf cku211.tar.gz
$ make linux
$ su
# make install

Set the permissions for /dev/ttyUSB0, so that a developer can access the Overo USB console.

$ su
# chgrp developers /dev/ttyUSB0

Step 07.00: Setup the Overo build environment

Step 07.01: Check out the OpenEmbedded build system.

$ cd /tool
$ mkdir overo-oe
$ cd overo-oe
$ git clone git://gitorious.org/gumstix-oe/mainline.git org.openembedded.dev
$ cd org.openembedded.dev
$ git checkout --track -b overo origin/overo

Step 07.02: Install BitBake.

$ cd /tool/overo-oe
$ svn co svn://svn.berlios.de/bitbake/branches/bitbake-1.8/ bitbake

Step 07.03: Creating the OE configuration files and profile.

We now will create a profile script and the configuration files required to tailor OE to our needs.

To make this a somewhat easier task, there is a template for the required files in the openembedded installation we just did.

Copy these files to your overo-oe directory:

$ cp -r org.openembedded.dev/contrib/gumstix/build .

If you have followed the example installation and placed the build system in overo-oe in your home directory, you are now ready to proceed to the next step. If you have installed the build system in a different location you will need to edit overo-oe/build/profile and change the definition of OVEROTOP as appropriate.

Step 07.04: Setup source code caching.

As part of the build process OpenEmbedded downloads source code tarballs for the linux kernel, compiler, and other software packages. 

By default this source code cache will be placed in overo-oe/sources. If you would like this cache to be located elsewhere, now is the time to edit build/conf/site.conf and set DL_DIR as appropriate.

For example, if you would like to cache the sources in /usr/share/sources, perform the following steps:

Add new group for cache management and add operating user to this group.

$ sudo groupadd oe
$ sudo usermod -a -G oe {your_username}

Next make source code storing directory and set owner and permission appropriately.

$ sudo mkdir /usr/share/sources
$ sudo chgrp oe /usr/share/sources
$ sudo chmod 0775 /usr/share/sources
$ sudo chmod ug+s /usr/share/sources

Edit the buid/conf/site.conf and set DL_DIR to /usr/share/sources as follows:

DL_DIR = "/usr/share/sources"

Step 07.05: Modify your .bashrc file.

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc

# User specific aliases and functions

# Environment setup for java

export JAVA_HOME="/usr/java/jdk1.6.0_12"
export PATH="${JAVA_HOME}/bin:$PATH"

# end java setup

# Environment setup for oe


export OVEROTOP="/tool/overo-oe"
export OEBRANCH="${OVEROTOP}/org.openembedded.dev"
export USERBRANCH="${OVEROTOP}/user.collection"

export CROSSCOMPILER="armv7a"
export PATH="${OVEROTOP}/bitbake/bin:${OVEROTOP}/tmp/cross/${CROSSCOMPILER}/bin:$PATH"

umask 0002

# end oe setup

Step 08.00: Install additional packages required by BitBake.

$ su
# yum install help2man
# yum install texi2html

Step 09.00: Build a basic kernel and a non-gui root file system image in one step using the following command

$ bitbake omap3-console-image
$ bitbake x-load
$ bitbake u-boot-omap3

Additional bitbake recipies can be found in org.openembedded.dev/packages/image

$ bitbake omap3-desktop-image
$ bitbake omap3-udesktop-image

If BitBake complains about the mmap_min_addr not being set to 0, type the following :

$ su
# echo “0” > /proc/sys/vm/mmap_min_addr

Step 10.00: Update the org.openembedded.dev sources at regular intervals by typing the following command

$ cd org.openembedded.dev
$ git pull

Related Topics


Related Links