strange bitbake error


Kamble, Nitin A <nitin.a.kamble@...>
 

Hi Richard,

  I am getting following bitbake error. I also tried passing –D option to bitbake, but I did not find anything useful. Also bellow is the change which is causing this error.

I don’t see anything oblivious here. As I understand just changing the recipe from cvs to git src_uri has caused this issue.

 

Thanks & Regards,

Nitin

 

$ bitbake gnu-config -c fetch

NOTE: Handling BitBake files: \ (0765/0765) [100 %]

Parsing of 765 .bb files complete (719 cached, 46 parsed). 924 targets, 34 skipped, 0 masked, 0 errors.

 

OE Build Configuration:

BB_VERSION        = "1.11.0"

METADATA_BRANCH   = "upgrades10"

METADATA_REVISION = "1f82a80572ddf17a5dd998234da7c517125c95c7"

TARGET_ARCH       = "i586"

TARGET_OS         = "linux"

MACHINE           = "qemux86"

DISTRO            = "poky"

DISTRO_VERSION    = "0.9+snapshot-20101208"

TARGET_FPU        = ""

 

NOTE: Resolving any missing task queue dependencies

Traceback (most recent call last):

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/server/none.py", line 128, in idle_commands

    retval = function(self, data, False)

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/cooker.py", line 728, in buildTargetsIdle

    retval = rq.execute_runqueue()

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 928, in execute_runqueue

    if self.rqdata.prepare() is 0:

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 651, in prepare

    self.runq_weight = self.calculate_task_weights(endpoints)

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 346, in calculate_task_weights

    msgs = self.circular_depchains_handler(problem_tasks)

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 292, in circular_depchains_handler

    find_chains(task, [])

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 284, in find_chains

    find_chains(revdep, deepcopy(prev_chain))

  File "/home/nitin/prj/poky.git/scripts/..//bitbake/lib/bb/runqueue.py", line 285, in find_chains

    for dep in explored_deps[revdep]:

KeyError: 37

NOTE: Preparing runqueue

ERROR: Unbuildable tasks were found.

These are usually caused by circular dependencies and any circular dependency chains found will be printed below. Increase the debug level to see a list of unbuildable tasks.

 

Identifying dependency loops (this may take a short while)...

 

NOTE: Tasks Summary: Attempted 0 tasks of which 0 didn't need to be rerun and 0 failed.

 

 

 

Change causing this issue:

 

 

diff --git a/meta/conf/distro/include/poky-default-revisions.inc b/meta/conf/distro/include/poky-default-revisions.inc

index 488084b..6309cdb 100644

--- a/meta/conf/distro/include/poky-default-revisions.inc

+++ b/meta/conf/distro/include/poky-default-revisions.inc

@@ -179,4 +179,5 @@ SRCDATE_yaffs2-utils ??= "20071107"

 SRCREV_pn-zaurusd ??= "358"

 SRCREV_pn-zypper ??= "9eb0e248e06c8d20ad054be2439149d9ede37531"

 SRCREV_pn-blktrace ??= "1e09f6e9012826fca69fa07222b7bc53c3e629ee"

+SRCREV_pn-gnu-config ??= "3155524d0410c37b6286465249264c7981ab8cba"

 

diff --git a/meta/recipes-devtools/gnu-config/gnu-config_20080123.bb b/meta/recipes-devtools/gnu-config/gnu-config_20080123.bb

deleted file mode 100644

index 5d7d646..0000000

--- a/meta/recipes-devtools/gnu-config/gnu-config_20080123.bb

+++ /dev/null

@@ -1,38 +0,0 @@

-DESCRIPTION = "gnu-configize"

-SECTION = "devel"

-LICENSE = "GPLv1+"

-LIC_FILES_CHKSUM = "file://config.guess;endline=39;md5=a089987af4a25cb0419d1c2fd6d495e3"

-DEPENDS = ""

-INHIBIT_DEFAULT_DEPS = "1"

-

-FIXEDSRCDATE = "${@bb.data.getVar('FILE', d, 1).split('_')[-1].split('.')[0]}"

-PV = "0.1+cvs${FIXEDSRCDATE}"

-PR = "r1"

-

-SRC_URI = "cvs://anonymous@.../cvsroot/config;module=config;method=pserver;date=${FIXEDSRCDATE} \

-                 file://config-guess-uclibc.patch \

-           file://gnu-configize.in"

-S = "${WORKDIR}/config"

-

-do_compile() {

-              :

-}

-

-do_install () {

-              install -d ${D}${datadir}/gnu-config \

-                                 ${D}${bindir}

-              cat ${WORKDIR}/gnu-configize.in | \

-                              sed -e 's,@gnu-configdir@,${datadir}/gnu-config,g' \

-                                  -e 's,@autom4te_perllibdir@,${datadir}/autoconf,g' > ${D}${bindir}/gnu-configize

-              # In the native case we want the system perl as perl-native can't have built yet

-              if [ "${BUILD_ARCH}" != "${TARGET_ARCH}" ]; then

-                              sed -i -e 's,/usr/bin/perl,${bindir}/perl,g' ${D}${bindir}/gnu-configize

-              fi

-              chmod 755 ${D}${bindir}/gnu-configize

-              install -m 0644 config.guess config.sub ${D}${datadir}/gnu-config/

-}

-

-PACKAGES = "${PN}"

-FILES_${PN} = "${bindir} ${datadir}/gnu-config"

-

-BBCLASSEXTEND = "native"

diff --git a/meta/recipes-devtools/gnu-config/gnu-config_git.bb b/meta/recipes-devtools/gnu-config/gnu-config_git.bb

new file mode 100644

index 0000000..6df0892

--- /dev/null

+++ b/meta/recipes-devtools/gnu-config/gnu-config_git.bb

@@ -0,0 +1,37 @@

+DESCRIPTION = "gnu-configize"

+SECTION = "devel"

+LICENSE = "GPLv1+"

+LIC_FILES_CHKSUM = "file://config.guess;endline=39;md5=a089987af4a25cb0419d1c2fd6d495e3"

+DEPENDS = ""

+INHIBIT_DEFAULT_DEPS = "1"

+

+PV = "2010.09.11+git${SRCPV}"

+PR = "r0"

+

+SRC_URI = "git://git.svannah.gnu.org/config.git;protocol=git;branch=master \

+                file://config-guess-uclibc.patch \

+           file://gnu-configize.in"

+S = "${WORKDIR}/config"

+

+do_compile() {

+             :

+}

+

+do_install () {

+             install -d ${D}${datadir}/gnu-config \

+                                ${D}${bindir}

+             cat ${WORKDIR}/gnu-configize.in | \

+                             sed -e 's,@gnu-configdir@,${datadir}/gnu-config,g' \

+                                 -e 's,@autom4te_perllibdir@,${datadir}/autoconf,g' > ${D}${bindir}/gnu-configize

+             # In the native case we want the system perl as perl-native can't have built yet

+             if [ "${BUILD_ARCH}" != "${TARGET_ARCH}" ]; then

+                             sed -i -e 's,/usr/bin/perl,${bindir}/perl,g' ${D}${bindir}/gnu-configize

+             fi

+             chmod 755 ${D}${bindir}/gnu-configize

+             install -m 0644 config.guess config.sub ${D}${datadir}/gnu-config/

+}

+

+PACKAGES = "${PN}"

+FILES_${PN} = "${bindir} ${datadir}/gnu-config"

+

+BBCLASSEXTEND = "native"


Richard Purdie <rpurdie@...>
 

Hi Nitin,

On Tue, 2010-12-07 at 19:15 -0800, Kamble, Nitin A wrote:
I am getting following bitbake error. I also tried passing –D option
to bitbake, but I did not find anything useful. Also bellow is the
change which is causing this error.

I don’t see anything oblivious here. As I understand just changing the
recipe from cvs to git src_uri has caused this issue.
Its probably exactly this change the breaks things. git SRC_URIs have a
dependency on git-native. git-native probably depends on
gnu-config-native indirectly. The end result is a circular dependency.
Bitbake tried to work this out but obviously got lost in the circular
logic.

It did try and warn you with:

"""
ERROR: Unbuildable tasks were found.

These are usually caused by circular dependencies and any circular
dependency chains found will be printed below. Increase the debug
level to see a list of unbuildable tasks.
"""

Cheers,

Richard


Kamble, Nitin A <nitin.a.kamble@...>
 

On Tue, 2010-12-07 at 19:15 -0800, Kamble, Nitin A wrote:
I am getting following bitbake error. I also tried passing –D
option
to bitbake, but I did not find anything useful. Also bellow is the
change which is causing this error.

I don’t see anything oblivious here. As I understand just changing
the
recipe from cvs to git src_uri has caused this issue.
Its probably exactly this change the breaks things. git SRC_URIs have a
dependency on git-native. git-native probably depends on
gnu-config-native indirectly. The end result is a circular dependency.
Bitbake tried to work this out but obviously got lost in the circular
logic.
Thanks Richard for the clarification. So what would be possible solution for this circular dependency issue? I can check if we can get the latest gnu-config via cvs. Any other or better solution?

Thanks,
Nitin


Richard Purdie <rpurdie@...>
 

On Wed, 2010-12-08 at 08:29 -0800, Kamble, Nitin A wrote:

On Tue, 2010-12-07 at 19:15 -0800, Kamble, Nitin A wrote:
I am getting following bitbake error. I also tried passing –D
option
to bitbake, but I did not find anything useful. Also bellow is the
change which is causing this error.

I don’t see anything oblivious here. As I understand just changing
the
recipe from cvs to git src_uri has caused this issue.
Its probably exactly this change the breaks things. git SRC_URIs have a
dependency on git-native. git-native probably depends on
gnu-config-native indirectly. The end result is a circular dependency.
Bitbake tried to work this out but obviously got lost in the circular
logic.
Thanks Richard for the clarification. So what would be possible
solution for this circular dependency issue? I can check if we can get
the latest gnu-config via cvs. Any other or better solution?
Is there a release tarball we can use? If not, we might end up hosting a
release tarball for it somewhere given this piece of software's position
in the build process.

I'd like to axe our cvs dependency for sure.

Cheers,

Richard


Kamble, Nitin A <nitin.a.kamble@...>
 

Thanks Richard for the clarification. So what would be possible
solution for this circular dependency issue? I can check if we can
get
the latest gnu-config via cvs. Any other or better solution?
Is there a release tarball we can use? If not, we might end up hosting
a
release tarball for it somewhere given this piece of software's
position
in the build process.

I'd like to axe our cvs dependency for sure.

Hi Richard,
The git web interface also export a tarball url: I was trying to use it: http://git.savannah.gnu.org/gitweb/?p=config.git;a=snapshot;h=1a0cbc1cd216932e4ecd7c773a4fa8aecce5b536;sf=tgz

But current bitbake fetcher would not handle ";" in the url. I was working on fixing that.

Thanks,
Nitin