[yocto] Rocko and Circular Dependencies

Barry Grussling barry at grussling.com
Tue Dec 19 19:02:57 PST 2017


Hello all,

I am trying to move one of my builds from Krogoth to Rocko.  I am
attempting to build
on 1c61ba0a3f bitbake: tinfoil: Ensure we clean up loggers.

Generally, I can start the first build fine.  Unfortunately, some of
my code/recipes will usually fail
to build due to the new compilers.  When I re-run bitbake to continue
the build, most of
the time I experience a build failure of circular dependencies such as:

Dependency loop #1 found:
  Task /srv/BLD/yocto/meta/recipes-core/ncurses/ncurses_6.0+20170715.bb:do_package
(dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot',
'gcc-runtime_7.2.bb:do_packagedata', 'glibc_2.26.bb:do_packagedata',
'rpm_git.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_install',
'dpkg_1.18.24.bb:do_packagedata',
'libtool-cross_2.4.6.bb:do_packagedata'])
  Task /srv/BLD/yocto/meta/recipes-core/ncurses/ncurses_6.0+20170715.bb:do_packagedata
(dependent Tasks ['ncurses_6.0+20170715.bb:do_package'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_package
(dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot',
'gcc-runtime_7.2.bb:do_packagedata', 'perl_5.24.1.bb:do_packagedata',
'glibc_2.26.bb:do_packagedata', 'rpm_git.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_packagedata',
'bzip2_1.0.6.bb:do_packagedata', 'dpkg_1.18.24.bb:do_install',
'zlib_1.2.11.bb:do_packagedata',
'libtool-cross_2.4.6.bb:do_packagedata',
'xz_5.2.3.bb:do_packagedata'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_packagedata
(dependent Tasks ['dpkg_1.18.24.bb:do_package'])

Dependency loop #2 found:
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_package
(dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot',
'gcc-runtime_7.2.bb:do_packagedata', 'perl_5.24.1.bb:do_packagedata',
'glibc_2.26.bb:do_packagedata', 'rpm_git.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_packagedata',
'bzip2_1.0.6.bb:do_packagedata', 'dpkg_1.18.24.bb:do_install',
'zlib_1.2.11.bb:do_packagedata',
'libtool-cross_2.4.6.bb:do_packagedata',
'xz_5.2.3.bb:do_packagedata'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_packagedata
(dependent Tasks ['dpkg_1.18.24.bb:do_package'])
  Task /srv/BLD/yocto/meta/recipes-extended/bzip2/bzip2_1.0.6.bb:do_package
(dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot',
'gcc-runtime_7.2.bb:do_packagedata', 'glibc_2.26.bb:do_packagedata',
'rpm_git.bb:do_populate_sysroot', 'dpkg_1.18.24.bb:do_packagedata',
'libtool-cross_2.4.6.bb:do_packagedata', 'bzip2_1.0.6.bb:do_install'])
  Task /srv/BLD/yocto/meta/recipes-extended/bzip2/bzip2_1.0.6.bb:do_packagedata
(dependent Tasks ['bzip2_1.0.6.bb:do_package'])

Dependency loop #3 found:
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_compile
(dependent Tasks ['dpkg_1.18.24.bb:do_configure'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_install
(dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot',
'dpkg_1.18.24.bb:do_compile'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_populate_sysroot
(dependent Tasks ['dpkg_1.18.24.bb:do_install',
'binutils-cross_2.29.bb:do_populate_sysroot'])
  Task /srv/BLD/yocto/meta/recipes-extended/bzip2/bzip2_1.0.6.bb:do_prepare_recipe_sysroot
(dependent Tasks ['libtool-cross_2.4.6.bb:do_populate_sysroot',
'glibc_2.26.bb:do_populate_sysroot', 'bzip2_1.0.6.bb:do_fetch',
'libtool-native_2.4.6.bb:do_populate_sysroot',
'dpkg_1.18.24.bb:do_populate_sysroot',
'gcc-runtime_7.2.bb:do_populate_sysroot',
'gnu-config_git.bb:do_populate_sysroot',
'gcc-cross_7.2.bb:do_populate_sysroot',
'automake_1.15.1.bb:do_populate_sysroot',
'autoconf_2.69.bb:do_populate_sysroot'])
  Task /srv/BLD/yocto/meta/recipes-extended/bzip2/bzip2_1.0.6.bb:do_configure
(dependent Tasks ['bzip2_1.0.6.bb:do_patch',
'bzip2_1.0.6.bb:do_prepare_recipe_sysroot'])
  Task /srv/BLD/yocto/meta/recipes-extended/bzip2/bzip2_1.0.6.bb:do_compile
(dependent Tasks ['bzip2_1.0.6.bb:do_configure'])
  Task /srv/BLD/yocto/meta/recipes-extended/bzip2/bzip2_1.0.6.bb:do_install
(dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot',
'bzip2_1.0.6.bb:do_compile'])
  Task /srv/BLD/yocto/meta/recipes-extended/bzip2/bzip2_1.0.6.bb:do_populate_sysroot
(dependent Tasks ['binutils-cross_2.29.bb:do_populate_sysroot',
'bzip2_1.0.6.bb:do_install'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_prepare_recipe_sysroot
(dependent Tasks ['libtool-cross_2.4.6.bb:do_populate_sysroot',
'bzip2_1.0.6.bb:do_populate_sysroot',
'glibc_2.26.bb:do_populate_sysroot',
'libtool-native_2.4.6.bb:do_populate_sysroot',
'dpkg_1.18.24.bb:do_fetch', 'perl_5.24.1.bb:do_populate_sysroot',
'gettext_0.19.8.1.bb:do_populate_sysroot',
'pkgconfig_git.bb:do_populate_sysroot',
'perl-native_5.24.1.bb:do_populate_sysroot',
'gcc-runtime_7.2.bb:do_populate_sysroot',
'xz_5.2.3.bb:do_populate_sysroot',
'systemd-systemctl-native.bb:do_populate_sysroot',
'gnu-config_git.bb:do_populate_sysroot',
'zlib_1.2.11.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_populate_sysroot',
'gcc-cross_7.2.bb:do_populate_sysroot',
'automake_1.15.1.bb:do_populate_sysroot',
'autoconf_2.69.bb:do_populate_sysroot'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_configure
(dependent Tasks ['dpkg_1.18.24.bb:do_prepare_recipe_sysroot',
'dpkg_1.18.24.bb:do_patch'])

Dependency loop #4 found:
  Task /srv/BLD/yocto/meta/recipes-core/ncurses/ncurses_6.0+20170715.bb:do_compile
(dependent Tasks ['ncurses_6.0+20170715.bb:do_configure'])
  Task /srv/BLD/yocto/meta/recipes-core/ncurses/ncurses_6.0+20170715.bb:do_install
(dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_compile'])
  Task /srv/BLD/yocto/meta/recipes-core/ncurses/ncurses_6.0+20170715.bb:do_populate_sysroot
(dependent Tasks ['binutils-cross_2.29.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_install'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_prepare_recipe_sysroot
(dependent Tasks ['libtool-cross_2.4.6.bb:do_populate_sysroot',
'bzip2_1.0.6.bb:do_populate_sysroot',
'glibc_2.26.bb:do_populate_sysroot',
'libtool-native_2.4.6.bb:do_populate_sysroot',
'dpkg_1.18.24.bb:do_fetch', 'perl_5.24.1.bb:do_populate_sysroot',
'gettext_0.19.8.1.bb:do_populate_sysroot',
'pkgconfig_git.bb:do_populate_sysroot',
'perl-native_5.24.1.bb:do_populate_sysroot',
'gcc-runtime_7.2.bb:do_populate_sysroot',
'xz_5.2.3.bb:do_populate_sysroot',
'systemd-systemctl-native.bb:do_populate_sysroot',
'gnu-config_git.bb:do_populate_sysroot',
'zlib_1.2.11.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_populate_sysroot',
'gcc-cross_7.2.bb:do_populate_sysroot',
'automake_1.15.1.bb:do_populate_sysroot',
'autoconf_2.69.bb:do_populate_sysroot'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_configure
(dependent Tasks ['dpkg_1.18.24.bb:do_prepare_recipe_sysroot',
'dpkg_1.18.24.bb:do_patch'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_compile
(dependent Tasks ['dpkg_1.18.24.bb:do_configure'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_install
(dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot',
'dpkg_1.18.24.bb:do_compile'])
  Task /srv/BLD/yocto/meta/recipes-devtools/dpkg/dpkg_1.18.24.bb:do_populate_sysroot
(dependent Tasks ['dpkg_1.18.24.bb:do_install',
'binutils-cross_2.29.bb:do_populate_sysroot'])
  Task /srv/BLD/yocto/meta/recipes-core/ncurses/ncurses_6.0+20170715.bb:do_prepare_recipe_sysroot
(dependent Tasks ['libtool-cross_2.4.6.bb:do_populate_sysroot',
'glibc_2.26.bb:do_populate_sysroot',
'pkgconfig_git.bb:do_populate_sysroot',
'libtool-native_2.4.6.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_fetch',
'dpkg_1.18.24.bb:do_populate_sysroot',
'gcc-runtime_7.2.bb:do_populate_sysroot',
'ncurses_6.0+20170715.bb:do_populate_sysroot',
'gnu-config_git.bb:do_populate_sysroot',
'gcc-cross_7.2.bb:do_populate_sysroot',
'automake_1.15.1.bb:do_populate_sysroot',
'autoconf_2.69.bb:do_populate_sysroot'])
  Task /srv/BLD/yocto/meta/recipes-core/ncurses/ncurses_6.0+20170715.bb:do_configure
(dependent Tasks ['ncurses_6.0+20170715.bb:do_prepare_recipe_sysroot',
'ncurses_6.0+20170715.bb:do_patch'])

After hitting this state, multiple re-invocations of the bitbake will
all fail with the same type of errors.  If I clean all state
and remove the tmp folder and start again, the build will usually work
(until I hit my next compilation issue).  Needless to say, this
gets old fast.  I am hitting this style of issue regardless of the
value of PACKAGE_CLASSES.

I _never_ had issues with circular dependencies in krogoth.  Is anyone
else hitting this?  Any caveats to be aware of?

Thanks,

Barry



More information about the yocto mailing list