Flameman/bitbake

From eLinux.org
< Flameman
Revision as of 03:10, 22 June 2009 by Flameman (talk | contribs) (bitbake &C)
Jump to: navigation, search

host

arch intel x86 (pentium III)

distro gentoo.2008.1

gcc 4.1.2

binutils 2.18


used doc

http://wiki.openembedded.net/index.php/Getting_Started



install

gentoo specific

emerge dev-util/diffstat

emerge app-text/texi2html

emerge dev-python/pysqlite

emerge dev-util/git

bitbake &C

      mkdir -p /src/oe/stuff
      mkdir -p /src/oe/stuff/build
      mkdir -p /src/oe/stuff/build/conf
      
      echo "[*] bitbake"
           cd /src/oe/stuff/
           svn co svn://svn.berlios.de/bitbake/branches/bitbake-1.8/ bitbake
      echo "[*] oe"
           cd /src/oe/stuff/
           git clone git://git.openembedded.net/openembedded

edit build/conf/local.conf

here it is http://www.webalice.it/mr.ddc/bitbake-local.conf.txt

how i use it

  1. http://wiki.openembedded.net/index.php/GitPhraseBook#Checking_out_a_branch

if [ "*$1" == "*" ] || [ "$1" == "info" ]

  then
      echo "see http://wiki.openembedded.net/index.php/Getting_Started"
      exit
  fi

if [ "$1" == "sanity" ]

  then
      nano stuff/openembedded/classes/sanity.bbclass
      exit
  fi

if [ "$1" == "install" ]

  then
      mkdir -p /src/oe/stuff
      mkdir -p /src/oe/stuff/build
      mkdir -p /src/oe/stuff/build/conf
      
      echo "[*] bitbake"
           cd /src/oe/stuff/
           svn co svn://svn.berlios.de/bitbake/branches/bitbake-1.8/ bitbake
      echo "[*] oe"
           cd /src/oe/stuff/
           git clone git://git.openembedded.net/openembedded
      
      echo "[*] on gentoo you need to emerge the following"
      echo "    dev-util/diffstat"
      echo "        Homepage:      http://invisible-island.net/diffstat/diffstat.html"
      echo "        Description:   Display a histogram of diff changes"
      echo "    app-text/texi2html"
      echo "        Homepage:      http://www.nongnu.org/texi2html/"
      echo "        Description:   Perl script that converts Texinfo to HTML"
      echo "    dev-python/pysqlite"
      echo "        Homepage:      http://pysqlite.org/"
      echo "        Description:   Python wrapper for the local database Sqlite"
      echo "    dev-util/git"
      echo "        Homepage:      http://git.or.cz/"
      echo "        Description:   GIT - the stupid content tracker, the revision control system"
      echo "    dev-util/monotone"
      echo "        Homepage:      http://monotone.ca"
      echo "        Description:   Monotone Distributed Version Control System"
  fi

if [ "$1" == "update" ]

  then
      cd /src/oe/stuff/bitbake
      echo "[*] svn info"
      svn info
      # If there is a new stable branch
      # you will want to move or delete your existing bitbake directory 
      # and repeat the process listed above under "To obtain bitbake". 
      # If there is no new branch, it is easy to update bitbake:
    
      echo "[*] svn update bitbake"
      svn update
      echo "[*] git pull oe"
           cd /src/oe/stuff/
           #upadting oe
           # if not existing oe/stuff/bitbake/openembedded/.git/       
           #    git clone git://git.openembedded.org/openembedded
           git pull # it is not working: why not ???
  fi

if [ "$1" == "local-config" ] # create local config

  then
      echo "Create local configuration"
      # It's now time to create your local configuration. 
      # While you could copy the default local.conf.sample like that:
      cd /src/oe/stuff/
      cp openembedded/conf/local.conf.sample build/conf/local.conf
      nano build/conf/local.conf
  fi

if [ "$1" == "build" ]

  then
     # It is actually recommended to start smaller and keep local.conf.sample 
     # in the background and add entries from there step-by-step as you 
     # understand and need them. 
     # Please, do not just edit build/conf/local.conf.sample but actually READ it 
     # (read it and then edit).
     # For building a .dev branch, in your local.conf file, you should have 
     # at least the following three entries. 
     # Example for the Angstrom distribution and the Openmoko gta01 machine:
     export BBFILES="/src/oe/stuff/openembedded/packages/*/*.bb" 
     export DISTRO="angstrom-2008.1"
     export MACHINE="akita"
     # If you choose to install OE in your home directory, 
     # modify local.conf to refer to the OE paths as /home/<username>/ rather than ~/. 
     # It does not find the *.bb packages otherwise. 
     export BBPATH=/src/oe/stuff/build:/src/oe/stuff/openembedded
     export   PATH=/src/oe/stuff/bitbake/bin:$PATH
     


     #Building a single package
     package="virtual/kernel"
     action="-c patch"
     #action="-c fetch"
     
     bitbake $action $package
  fi 

if [ "$1" == "test" ]

  then
     export BBFILES="/src/oe/stuff/openembedded/packages/*/*.bb"
     export DISTRO="angstrom-2008.1"
     export MACHINE="akita"
     # If you choose to install OE in your home directory,
     # modify local.conf to refer to the OE paths as /home/<username>/ rather than ~/.
     # It does not find the *.bb packages otherwise.
     export BBPATH=/src/oe/stuff/build:/src/oe/stuff/openembedded
     export   PATH=/src/oe/stuff/bitbake/bin:$PATH
     bitbake package-index
  fi



issue

NOTE: Psyco JIT Compiler (http://psyco.sf.net) not available. Install it to increase performance.
done.
NOTE: Parsing finished. 6648 cached, 0 parsed, 272 skipped, 0 masked.
NOTE: Cache is clean, not saving.
NOTE: Resolving any missing task queue dependencies
ERROR: '[]' RDEPENDS/RRECOMMENDS or otherwise requires the runtime entity 'virtual/arm-angstrom-linux-gnueabi-gcc-2.95' but it wasn't found i$
NOTE: Runtime target 'virtual/arm-angstrom-linux-gnueabi-gcc-2.95' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['virtual/arm-angstrom-linux-gnueabi-gcc-2.95']
NOTE: Preparing runqueue
NOTE: Executing runqueue
NOTE: Running task 28 of 40 (ID: 37, /src/oe/stuff/openembedded/recipes/coreutils/coreutils-native_7.2.bb, do_compile)
ERROR: function do_compile failed
ERROR: log data follows (/src/oe/stuff/build/angstrom/tmp/work/i686-linux/coreutils-native-7.2-r0/temp/log.do_compile.10625)
| NOTE: make
| make: GNUmakefile: Too many levels of symbolic links
| make: stat: GNUmakefile: Too many levels of symbolic links
| make: *** No rule to make target `GNUmakefile'.  Stop.
| FATAL: oe_runmake failed
NOTE: Task failed: /src/oe/stuff/build/angstrom/tmp/work/i686-linux/coreutils-native-7.2-r0/temp/log.do_compile.10625
ERROR: TaskFailed event exception, aborting     
ERROR: Build of /src/oe/stuff/openembedded/recipes/coreutils/coreutils-native_7.2.bb do_compile failed
ERROR: Task 37 (/src/oe/stuff/openembedded/recipes/coreutils/coreutils-native_7.2.bb, do_compile) failed
NOTE: Tasks Summary: Attempted 27 tasks of which 27 didn't need to be rerun and 1 failed.
ERROR: '/src/oe/stuff/openembedded/recipes/coreutils/coreutils-native_7.2.bb' failed