Flameman/bitbake
From eLinux.org
Contents |
host
arch intel x86 (pentium III)
distro gentoo.2008.1
gcc 4.1.2
binutils 2.18
bitbake and his stuff is hosted on /mnt/diske/src/oe
a link is provided in order to /src/oe --> /mnt/diske/src/oe
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
# 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