Difference between revisions of "Category:How to - verdex"

From Gumstix User Wiki
Jump to: navigation, search
Line 1: Line 1:
An experimental version of the Open Embedded 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 repository.  As well, the most recent code from the Open Embedded repository is now available for Verdex-Pro COMs and the building process reflects that used on the Overo boards.
+
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''':
 
'''Disclaimers''':
#. This repository is unstable and the kernel may be missing features--use at your own risk.
+
# This repository is unstable and the kernel may be missing features--use at your own risk.
#. 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.
+
# 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==
 
==The Straight Dope==
 
Follow the basic instructions for setting up an [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Setting-up-a-build-environment/111.html OE repository for Overo] but replace this instruction:
 
Follow the basic instructions for setting up an [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Setting-up-a-build-environment/111.html OE repository for Overo] but replace this instruction:
$ git checkout --track -b overo origin/overo
+
$ git checkout --track -b overo origin/overo
$ git checkout --track -b verdex origin/verdex
+
$ git checkout --track -b verdex origin/verdex
  
 
Your repository will now be tracking the Verdex branch of the Gumstix OE Git repository.
 
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
+
Your machine type should be <tt>gumstix-verdex</tt> set in ''build/conf/auto.conf''
 +
 
 
Four images are available:
 
Four images are available:
 
* verdex-console-image
 
* verdex-console-image
Line 19: Line 20:
  
 
==Step by Step==
 
==Step by Step==
These instructions assume you are using a recent release of Ubuntu on which your have 'sudo' permissions.  For information about installing Open Embedded on other distributions, see ().
+
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 [http://wiki.openembedded.net/index.php/OEandYourDistro 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
+
2. Download the Verdex repository and the bitbake tool into the 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 .
+
3. 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.
+
$ cat ~/verdex-oe/build/profile >> ~/.bash_profile
+
  
4.(Optional)
+
# Configure your system and get required and recommended software packages.
a) If you are building on a multi-core machine, edit
+
sudo apt-get update
b) Get rid of a warning about a missing user.collection directoryEither make a user.collections/recipes directory
+
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
$ mkdir -p ~/verdex-oe/user.collection/recipes
+
sudo ln -sf bash /bin/sh
Or, untar the Open Embedded 'helloworld' tutorial code package
+
sudo sh -c 'echo -e "vm.vdso_enabled=0\nvm.mmap_min_addr=0" >> /etc/sysctl.conf'
c) Create a symbolic link into the directory where the verdex images will be built
+
  sudo sysctl -p
$ ln -sf ~/verdex-oe/tmp/ ~/verdex-oe/images
+
# Download the Verdex repository and the bitbake tool into a ''verdex-oe'' directory in your home folder.
d) If you have already downloaded much of the required source code for OE, point your
+
mkdir -p ~/overo-oe
4. Now you are set to build (note, this step takes several hours
+
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 .
 +
# 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.
 +
# cat ~/verdex-oe/build/profile >> ~/.bash_profile
  
* Create a microSD card with a small (20MB) FAT partition and an Ext3 partition large enough to hold your untarred root file system.
+
#(Optional) Some tweaks...
* 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.
+
## If you are building on a multi-core machine, uncomment the <tt>PARALLEL_MAKE</tt> and <tt>BB_NUMBER_THREADS</tt> variables in the ''~/verdex-oe/build/conf/site.conf'' file.  Some people recommend setting these variables to <tt>n-1</tt> where <tt>n</tt> is the number of threads contexts or cores you have.
$ sudo cp ~/verdex-oe
+
## 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 [http://TODO code package] which may be useful if you want to learn more about OE.  See [http://docs.openembedded.org/usermanual/usermanual.html#recipes_helloworld_example this page] for more details.
 +
$ tar -xzf helloworld.tar.gz -C ~/verdex-oe
 +
## 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
 +
## 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 <tt>DL_DIR</tt> in the ''~/verdex-oe/build/conf/site.conf''
 +
# 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
 +
# Create a microSD card with a small (20MB) FAT partition and an Ext3 partition large enough to hold your untarred root file system.
 +
# 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 <tt>mount</tt> to check where they are mounted on your system.
 +
$ sudo cp ~/verdex-oe
 
* Boot your Verdex!
 
* Boot your Verdex!
  

Revision as of 12:32, 2 March 2010

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.