Category:How to - verdex

From Gumstix User Wiki
Revision as of 13:32, 2 March 2010 by Ashcharles (Talk | contribs)

Jump to: navigation, search

An experimental version of the OpenEmbedded (OE) repository is available for the Verdex. This repository brings a more recent Linux kernel (2.6.31) to Verdex compared with those available in the older Subversion (SVN) repository. As well, the most recent code from the OE repository is now available for Verdex-Pro COMs and the building process reflects that used on the Overo boards.

Disclaimers:

  1. This repository is unstable and the kernel may be missing features--use at your own risk.
  2. U-boot has not yet been updated and the default kernels are larger than 1MB so flashing them to memory won't work. You'll need to run off a microSD card.

The Straight Dope

Follow the basic instructions for setting up an OE repository for Overo but replace this instruction:

$ git checkout --track -b overo origin/overo
$ git checkout --track -b verdex origin/verdex

Your repository will now be tracking the Verdex branch of the Gumstix OE Git repository. Your machine type should be gumstix-verdex set in build/conf/auto.conf

Four images are available:

  • verdex-console-image
  • verdex-palmtop-image
  • verdex-desktop-image
  • verdex-gnome-image

Step by Step

These instructions assume you are using a recent release of Ubuntu on which your have 'sudo' permissions. For information about installing OpenEmbedded on other distributions, see here.

  1. Configure your system and get required and recommended software packages.
sudo apt-get update
sudo apt-get install -y git-core subversion build-essential help2man diffstat texi2html texinfo libncurses5-dev cvs gawk python-dev python-pysqlite2 unzip python-psyco
sudo ln -sf bash /bin/sh
sudo sh -c 'echo -e "vm.vdso_enabled=0\nvm.mmap_min_addr=0" >> /etc/sysctl.conf'
sudo sysctl -p
  1. Download the Verdex repository and the bitbake tool into a verdex-oe directory in your home folder.
mkdir -p ~/overo-oe
cd ~/verdex-oe
git clone git://gitorious.org/gumstix-oe/mainline.git org.openembedded.dev
cd org.openembedded.dev
git checkout --track -b verdex origin/verdex
cd ~/verdex-oe
git clone git://git.openembedded.net/bitbake bitbake
cd bitbake
git checkout 1.8.18
cd ~/verdex-oe
cp -r org.openembedded.dev/contrib/gumstix/build .
  1. Set up the environment variables. You can do this manually each time you open a terminal:
$ source ~/verdex-oe/build/profile

Or set your .bashrc to load them automatically every time you open a console.

  1. cat ~/verdex-oe/build/profile >> ~/.bash_profile
  1. (Optional) Some tweaks...
    1. If you are building on a multi-core machine, uncomment the PARALLEL_MAKE and BB_NUMBER_THREADS variables in the ~/verdex-oe/build/conf/site.conf file. Some people recommend setting these variables to n-1 where n is the number of threads contexts or cores you have.
    2. Get rid of a warning about a missing user.collection directory. Either make a user.collections/recipes directory
$ mkdir -p ~/verdex-oe/user.collection/recipes

Or, untar the Open Embedded 'helloworld' tutorial code package which may be useful if you want to learn more about OE. See this page for more details.

$ tar -xzf helloworld.tar.gz -C ~/verdex-oe 
    1. Create a symbolic link into the directory where the verdex images will be built for easy access.
$ ln -sf ~/verdex-oe/tmp/ ~/verdex-oe/images
    1. If you have already downloaded much of the required source code for OE (i.e. you use OpenEmbedded already for another machine like Overo or via the older SVN repository), point bitbake to your old sources directory by editing the DL_DIR in the ~/verdex-oe/build/conf/site.conf
  1. Now you are set to build a new kernel and root file system. Note, this step may take up to 6 hours depending on your internet connection and your machine.
$ bitbake -k verdex-console-image
  1. Create a microSD card with a small (20MB) FAT partition and an Ext3 partition large enough to hold your untarred root file system.
  2. Copy your kernel to the VFAT partition of the microSD and untar your rootfs to the Ext3 partition. We've assumed that the FAT partition is mounted at /media/card_fat and the Ext3 partition is mounted at /media/card_ext however run mount to check where they are mounted on your system.
$ sudo cp ~/verdex-oe
  • Boot your Verdex!

Future Plans

Once this repository has become more stable, it will supersede the older SVN repository as the main source of code for the Verdex COMs. This should include updated kernels and U-Boot as well as updated OE code pulled from (and eventually merged into) the Overo branch. Documentation will be refined based on this wiki page.

Problems? Improvements?

  • bug reports and, better yet, bug fixes are always welcome. Send mail to the Gumstix users mailing list and copy Ash (ash (at) gumstix (dot) com).
  • make changes to this wiki page to highlight known issues and suggest improvements

This category currently contains no pages or media.