On Fri, Mar 30, 2012 at 02:37:36AM -0700, Russell Senior wrote: > >>>>> "Martin" == Martin Jansa <martin.ja...@gmail.com> writes: > > Martin> On Fri, Mar 30, 2012 at 01:20:01AM -0700, Russell Senior > Martin> wrote: > >> >>>>> "Martin" == Martin Jansa <martin.ja...@gmail.com> writes: > >> > Martin> [...] So please add more debug output to get_package_filename > Martin> and try again > >> I am an open-embedded newbie. You want to suggest a patch, I'll > >> try it. > > Martin> This is just shell function defined in > Martin> openembedded-core/meta/classes/rootfs_ipk.bbclass just add > Martin> some "echo" output to it to see what's going on and run image > Martin> build again and read resulting log.do_rootfs, no open-embedded > Martin> wizardry involved.. > > With this debugging patch: > > diff --git a/meta/classes/rootfs_ipk.bbclass b/meta/classes/rootfs_ipk.bbclass > index 13bd4bf..5b2e04d 100644 > --- a/meta/classes/rootfs_ipk.bbclass > +++ b/meta/classes/rootfs_ipk.bbclass > @@ -128,11 +128,16 @@ list_installed_packages() { > > get_package_filename() { > info=`opkg-cl ${IPKG_ARGS} info $1 | grep -B 7 -A 7 "^Status.* > \(\(installed\)\|\(unpacked\)\)" || true` > + echo "get_package_filename( $1 ) info:" $info >> /tmp/debug.log > name=`echo "${info}" | awk '/^Package/ {printf $2"_"}'` > + echo "get_package_filename( $1 ) name:" $name >> /tmp/debug.log > name=$name`echo "${info}" | awk -F: '/^Version/ {printf $NF"_"}' | > sed 's/^\s*//g'` > + echo "get_package_filename( $1 ) name:" $name >> /tmp/debug.log > name=$name`echo "${info}" | awk '/^Archi/ {print $2".ipk"}'` > + echo "get_package_filename( $1 ) name:" $name >> /tmp/debug.log > > fullname=`find ${DEPLOY_DIR_IPK} -name "$name" || true` > + echo "get_package_filename( $1 ) fullname:" $fullname >> > /tmp/debug.log > if [ "$fullname" = "" ] ; then > echo $name > else > > my debugging output suggests that the process continues calling > get_package_filename() through 'wpa-supplicant-passphrase' returning > reasonable looking 'fullname' values. The log file is interrupted > before it makes it all to disk or something, making the stopping point > in the log misleading. > > If I apply this patch, the problem goes away: > > diff --git a/meta/classes/package_ipk.bbclass > b/meta/classes/package_ipk.bbclass > index 565ef93..d99317e 100644 > --- a/meta/classes/package_ipk.bbclass > +++ b/meta/classes/package_ipk.bbclass > @@ -174,7 +174,7 @@ ipk_log_check() { > lf_path="$2" > > lf_txt="`cat $lf_path`" > - for keyword_die in "exit 1" "Collected errors" ERR Fail > + for keyword_die in "exit 1" "Collected errors" > do > if (echo "$lf_txt" | grep -v log_check | grep > "$keyword_die") >/dev/null 2>&1 > then > > I'm not sure why. ;-)
If you look what's in grep ERR log.do_rootfs* grep Fail log.do_rootfs* you'll see some filenames in "Source: " field of opkg-cl output. It's true that this echo calls put more opkg-cl output to log.do_rootfs then when it was calling opkg-cl 3 times, because of set -x :/. I'm sending patch to oe-core right now, please test it. http://lists.linuxtogo.org/pipermail/openembedded-core/2012-March/020313.html -- Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com
signature.asc
Description: Digital signature
_______________________________________________ Angstrom-distro-devel mailing list Angstrom-distro-devel@linuxtogo.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel