[oe] qt-embedded-4.4 and bitbake-1.6.8
Peter Klar
mcbeagle at gmx.de
Tue Jul 15 05:00:25 UTC 2008
Hi,
first I have to admit that I use oe and bb for a few days only, so pls let
me know if I missed some basics.
My goal is to compile qt-embedded-4.4 for the dreambox-7025 (mipsel).
Therefore I setup an oe environment within debian etch - or more precisly a
dreambox developer environment which is mostly based on oe. The dreambox
community provides a makefile which setups the environment and builds an
image w/o any user input:
http://schwerkraft.elitedvb.net/plugins/scmcvs/cvsweb.php/~checkout~/Makefile-opendreambox?content-type=text%2Fplain;cvsroot=opendreambox
This environment does not provide the qt-embedded-4.4 package, so I got it
from the openembedded git:
http://gitweb.openembedded.net/?p=org.openembedded.dev.git;a=tree;f=packages/qt4;hb=HEAD
I did the required steps to run bitbake manually and tried to build it which
failed:
$> bitbake -c rebuild qt-embedded
NOTE: Using cache in '/home/dreambox/dreambox-7025/cache/oe-cache.dreambox'
NOTE: Handling BitBake files: - (4096/4096) [100 %]
NOTE: Parsing finished. 3908 cached, 0 parsed, 160 skipped, 28 masked.
NOTE: build 200807150100: started
OE Build Configuration:
BB_VERSION = "1.6.8"
OE_REVISION = "format_version "1"
new_manifest [0000000000000000000000000000000000000004]
old_revision [3bf15b642ccda5728a4a42fec49cefe5a7439ab4]"
TARGET_ARCH = "mipsel"
TARGET_OS = "linux"
MACHINE = "dm7025"
DISTRO = "opendreambox"
DISTRO_VERSION = "1.5.0"
TARGET_FPU = "soft"
NOTE: package qt-embedded-4.4.0: started
NOTE: package qt-embedded-4.4.0-r4: task do_rebuild: started
NOTE: package qt-embedded-4.4.0-r4: task do_clean: started
NOTE:
removing /home/dreambox/dreambox-7025/build/tmp/work/qt-embedded-4.4.0-r4
NOTE:
removing /home/dreambox/dreambox-7025/build/tmp/stamps/qt-embedded-4.4.0-r4.*
NOTE: package qt-embedded-4.4.0-r4: task do_clean: completed
NOTE: package qt-embedded-4.4.0-r4: task do_fetch: started
NOTE: package qt-embedded-4.4.0-r4: task do_fetch: completed
NOTE: package qt-embedded-4.4.0-r4: task do_unpack: started
NOTE:
Unpacking /home/dreambox/dreambox-7025/sources/qt-embedded-linux-opensource-src-4.4.0.tar.bz2
to /home/dreambox/dreambox-7025/build/tmp/work/qt-embedded-4.4.0-r4/
NOTE:
Unpacking /home/dreambox/dreambox-7025/openembedded/packages/qt4/qt-embedded-4.4.0/qconfig-oe.h
to /home/dreambox/dreambox-7025/build/tmp/work/qt-embedded-4.4.0-r4/
NOTE: package qt-embedded-4.4.0-r4: task do_unpack: completed
NOTE: package qt-embedded-4.4.0-r4: task do_patch: started
NOTE: Applying patch '0001-cross-compile.patch'
NOTE: Applying patch '0003-no-tools.patch'
NOTE: Applying patch '0004-no-qmake.patch'
NOTE: Applying patch '0005-fix-mkspecs.patch'
NOTE: Applying patch 'build-tools.patch'
NOTE: Applying patch '0006-freetype-host-includes.patch'
NOTE: Applying patch '0007-openssl-host-includes.patch'
NOTE: package qt-embedded-4.4.0-r4: task do_patch: completed
NOTE: package qt-embedded-4.4.0-r4: task do_configure: started
NOTE: exceptions.AssertionError: while evaluating:
${@qt_endian(d)}
NOTE: exceptions.AssertionError: while evaluating:
${@qt_endian(d)}
NOTE: exceptions.AssertionError: while evaluating:
cp ${WORKDIR}/qconfig-oe.h ${S}/src/corelib/global
unset QMAKESPEC
unset QTDIR
ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake
ln -s linux-g++ mkspecs/${TARGET_OS}-oe-g++
echo "[Paths]" > $QT_CONF_PATH
echo "Prefix=${prefix}" >> $QT_CONF_PATH
echo "Documentation=${docdir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
echo "Headers=${includedir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
echo "Libraries=${libdir}" >> $QT_CONF_PATH
echo "Binaries=${bindir}" >> $QT_CONF_PATH
echo "Plugins=${libdir}/${QT_DIR_NAME}/plugins" >> $QT_CONF_PATH
echo "Data=${datadir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
echo "Translations=${datadir}/${QT_DIR_NAME}/translations" >>
$QT_CONF_PATH
echo "Settings=${sysconfdir}/${QT_DIR_NAME}" >> $QT_CONF_PATH
echo "Examples=${bindir}/${QT_DIR_NAME}/examples" >> $QT_CONF_PATH
echo "Demos=${bindir}/${QT_DIR_NAME}/demos" >> $QT_CONF_PATH
echo yes | ./configure -v \
-prefix ${prefix} \
-bindir ${bindir} \
-libdir ${libdir} \
-datadir ${datadir}/${QT_DIR_NAME} \
-sysconfdir ${sysconfdir}/${QT_DIR_NAME} \
-docdir ${docdir}/${QT_DIR_NAME} \
-headerdir ${includedir}/${QT_DIR_NAME} \
-plugindir ${libdir}/${QT_DIR_NAME}/plugins \
-translationdir ${datadir}/${QT_DIR_NAME}/translations \
-examplesdir ${bindir}/${QT_DIR_NAME}/examples \
-demosdir ${bindir}/${QT_DIR_NAME}/demos \
-platform ${TARGET_OS}-oe-g++ \
-xplatform ${TARGET_OS}-oe-g++ \
-embedded ${QT_ARCH} ${QT_ENDIAN} -fast \
-crossarch ${QT_ARCH} \
${QT_CONFIG_FLAGS} -fast \
-L${STAGING_LIBDIR} -I${STAGING_INCDIR} \
-I${STAGING_INCDIR}/freetype2
ERROR: function do_configure failed
ERROR: see log
in /home/dreambox/dreambox-7025/build/tmp/work/qt-embedded-4.4.0-r4/temp/log.do_configure.9253
NOTE: Task
failed: /home/dreambox/dreambox-7025/build/tmp/work/qt-embedded-4.4.0-r4/temp/log.do_configure.9253
NOTE: package qt-embedded-4.4.0-r4: task do_configure: failed
ERROR: Error in
executing: /home/dreambox/dreambox-7025/openembedded/packages/qt4/qt-embedded_4.4.0.bb
ERROR: Exception:bb.build.EventException Message:('Function failed in
task: /home/dreambox/dreambox-7025/build/tmp/work/qt-embedded-4.4.0-r4/temp/log.do_configure.9253',
<bb.build.TaskFailed instance at 0xb2911c6c>)
ERROR: Printing the environment of the function
ERROR: Error in
executing: /home/dreambox/dreambox-7025/openembedded/packages/qt4/qt-embedded_4.4.0.bb
ERROR: Exception:bb.build.EventException Message:('Function failed in
task: /home/dreambox/dreambox-7025/build/tmp/work/qt-embedded-4.4.0-r4/temp/log.do_configure.9253',
<bb.build.TaskFailed instance at 0xb2911c6c>)
ERROR: Printing the environment of the function
ERROR: TaskFailed event exception, aborting
NOTE: package qt-embedded-4.4.0: failed
ERROR: Build of qt-embedded failed
$> cat [...]/log.do_configure.9253
[...]/run.do_configure.9253: line 587: do_configure: command not found
I'm not sure but I think this is caused by an older bitbake version, the
dreambox environment supports only bitbake-1.6.8 and before, when using
bitbake-1.8.x it fails on parsing the bitbake files:
$> bitbake dreambox-image
NOTE: Invalid cache found, rebuilding...
ERROR: Error in executing:
ERROR: Exception:exceptions.UnboundLocalError Message:local variable 'bb'
referenced before assignment
ERROR: Printing the environment of the function
ERROR: 0001:def __anonfunc():
ERROR: 0002: import exceptions
ERROR: 0003: need_host = bb.data.getVar('COMPATIBLE_HOST', d, 1)
ERROR: 0004: if need_host:
ERROR: 0005: import re
ERROR: 0006: this_host = bb.data.getVar('HOST_SYS', d, 1)
ERROR: 0007: if not re.match(need_host, this_host):
ERROR: local variable 'bb' referenced before assignment while
parsing /home/dreambox/dreambox-7025/openembedded/packages/gpe-bluetooth/gpe-bluetooth_0.52.bb
[...]
For me it looks like the dreambox setup uses bitbake metadata files which
are incompatible to the latest bitbake versions while the qt-embedded
package needs latest bitbake.
Can you confirm this and/or do you have some hints how to solve this
problem?
Thanks & Regards
Peter
More information about the Openembedded-devel
mailing list