HelloWorld Examples

From Gumstix User Wiki
Revision as of 19:01, 11 March 2010 by Ashcharles (Talk | contribs)

Jump to: navigation, search

The OpenEmbedded (OE) manual introduces Bitbake recipes using a single 'helloworld' tutorial. While this is a useful introduction, there are many other common use cases.

Hello World

The git repository given below contains a user.collections directory complete with a number of sample helloworld recipes elucidating different use cases. An explanation for each is given below:

Recipe:Description:Command:
myhelloworldvanilla OE helloworld tutorialmyhelloworld
myhello-cppa simple C++ recipemyhello-cpp
myhello-makea recipe that uses a Makefilemyhello-make
myhello-cmakea recipe that uses cmake and creates a librarymyhello-cmake
myhello-pythona rather trivial python recipemyhello-python
myhello-gitshows git fetcher and patchingmyhello-git

Usage

  1. Clone this git repository from your top-level OE directory. For the sake of these instructions, we assume this is '~/overo-oe'.
    $ ~/overo-oe/ 
    $ git clone git://github.com/ashcharles/oe-usercollection.git user.collection
    Note: If you already have a user.collection directory, you might like to clone the repository by its default name (oe-usercollection) and then let bitbake know about this folder. See the extras folder inside the recipe for hints on this.
  2. Bitbake the desired recipe based on its recipe name e.g. bitbake myhello-cpp
  3. Copy the newly created package file from your build machine to your Gumstix. You might do this by transfering the files on microSD card, using a serial connection, or, most simply, copying them over an internet connection. E.g.
    $ scp ~/overo-oe/tmp/deploy/glibc/ipk/armv5te/myhelloworld_0.0.1-r0.5_armv5te.ipk root@mygumstixcom:~ 
  4. Install your package and test it out:
    > opkg install myhelloworld_0.0.1-r0.5_armv5te.ipk 
    > myhelloworld 
    Hello world! 

There are lots of use cases not covered here, feel free to add new or request new ones (ash (AT) gumstix (DOT) com)

Helpful Links