Flameman/bitbake
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
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