update_chroot failing with glibc conflict

86 views
Skip to first unread message

Matthew Blecker

unread,
Aug 25, 2021, 5:23:48 PM8/25/21
to Chromium OS Development
After repo sync yesterday (main branch / ToT), ~/trunk/src/scripts/update_chroot is now failing consistently with what appears to be a glibc version conflict.  I'm not exactly sure what the issue is though, several things look like issues, but none of them is actually that new in the codebase.

The error output says chromeos-base/chromeos-fonts requires sys-libs/glibc:2.2/2.2= .  Okay, that exact version requirement seems likely to fail...but again, how did that ever build recently?  Also, the ebuild file for chromeos-base/chromeos-fonts-0.0.1-r48 merely depends on sys-libs/glibc:= (no specific version).  Also, chromeos-base/chromeos-fonts-0.0.1-r49 is the current ebuild version, which I synced to, though it too merely depends on sys-libs/glibc:= (no specific version).

The error output also says virtual/libc requires sys-libs/glibc:2.2 .  This version-specific dependency is actually present in the ebuild, however it's been there for 8+ years.  That ebuild was updated last month in https://crrev.com/c/2940952 but that dependency was in the previous revision too, from 8 years ago.

Anyone have suggestions, or know of a recent change that might have caused this?

[blocks B      ] <net-misc/openssh-8.1_p1-r2 ("<net-misc/openssh-8.1_p1-r2" is blocking cross-x86_64-cros-linux-gnu/glibc-2.32-r16, cross-aarch64-cros-linux-gnu/glibc-2.32-r16, cross-i686-pc-linux-gnu/glibc-2.32-r16, sys-libs/glibc-2.32-r16, cross-armv7a-cros-linux-gnueabihf/glibc-2.32-r16)

 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

  (net-misc/openssh-8.1_p1-r1:0/0::portage-stable, installed) pulled in by
    net-misc/openssh required by (virtual/target-chromium-os-sdk-1-r193:0/0::chromiumos, installed)
    >=net-misc/openssh-4.4 required by (net-fs/sshfs-2.10-r4:0/0::chromiumos, installed)

  (sys-libs/glibc-2.32-r16:2.2/2.2::chromiumos, binary scheduled for merge) pulled in by
    >=sys-libs/glibc-2.22[multilib?] (>=sys-libs/glibc-2.22) required by (dev-java/icedtea-bin-3.4.0:8/8::portage-stable, installed)
    sys-libs/glibc required by @system
    sys-libs/glibc:2.2/2.2= required by (chromeos-base/chromeos-fonts-0.0.1-r48:0/0::chromiumos, installed)
    >=sys-libs/glibc-2.27 required by (virtual/target-chromium-os-sdk-1-r193:0/0::chromiumos, installed)
    >=sys-libs/glibc-2.2.5:* required by (dev-java/openjdk-bin-11.0.7_p10-r1:11/11::portage-stable, installed)
    >=sys-libs/glibc-2.4 required by (sys-apps/restorecon-2.7-r1:0/0::chromiumos, installed)
    sys-libs/glibc
    sys-libs/glibc:2.2 required by (virtual/libc-0:0/0::portage-stable, installed)

  (cross-aarch64-cros-linux-gnu/glibc-2.32-r16:2.2/2.2::crossdev, binary scheduled for merge) pulled in by
    cross-aarch64-cros-linux-gnu/glibc

  (cross-i686-pc-linux-gnu/glibc-2.32-r16:2.2/2.2::crossdev, binary scheduled for merge) pulled in by
    cross-i686-pc-linux-gnu/glibc

  (cross-x86_64-cros-linux-gnu/glibc-2.32-r16:2.2/2.2::crossdev, binary scheduled for merge) pulled in by
    cross-x86_64-cros-linux-gnu/glibc

  (cross-armv7a-cros-linux-gnueabihf/glibc-2.32-r16:2.2/2.2::crossdev, binary scheduled for merge) pulled in by
    cross-armv7a-cros-linux-gnueabihf/glibc


For more information about Blocked Packages, please refer to the following
section of the Gentoo Linux x86 Handbook (architecture is irrelevant):

https://wiki.gentoo.org/wiki/Handbook:X86/Working/Portage#Blocked_packages

cros_setup_toolchains: Unhandled exception:
Traceback (most recent call last):
  File "/mnt/host/source/chromite/bin/cros_setup_toolchains", line 208, in <module>
    DoMain()
  File "/mnt/host/source/chromite/bin/cros_setup_toolchains", line 204, in DoMain
    commandline.ScriptWrapperMain(FindTarget)
  File "/mnt/host/source/chromite/lib/commandline.py", line 1037, in ScriptWrapperMain
    ret = target(argv[1:])
  File "/mnt/host/source/chromite/scripts/cros_setup_toolchains.py", line 1348, in main
    root=root)
  File "/mnt/host/source/chromite/scripts/cros_setup_toolchains.py", line 730, in UpdateToolchains
    if UpdateTargets(targets, usepkg, root=root) or crossdev_targets or reconfig:
  File "/mnt/host/source/chromite/scripts/cros_setup_toolchains.py", line 549, in UpdateTargets
    cros_build_lib.run(cmd)
  File "/mnt/host/source/chromite/lib/cros_build_lib.py", line 921, in run
    raise RunCommandError(msg, cmd_result)
chromite.lib.cros_build_lib.RunCommandError: return code: 1; command: /mnt/host/source/chromite/bin/parallel_emerge --oneshot --update --getbinpkg --usepkgonly cross-armv7a-cros-linux-gnueabihf/compiler-rt cross-armv7a-cros-linux-gnueabihf/llvm-libunwind cross-armv7a-cros-linux-gnueabihf/libcxxabi cross-armv7a-cros-linux-gnueabihf/libcxx cross-armv7a-cros-linux-gnueabihf/go cross-armv7a-cros-linux-gnueabihf/binutils cross-armv7a-cros-linux-gnueabihf/gcc cross-armv7a-cros-linux-gnueabihf/linux-headers cross-armv7a-cros-linux-gnueabihf/glibc cross-armv7a-cros-linux-gnueabihf/gdb dev-lang/rust sys-devel/llvm sys-libs/llvm-libunwind sys-libs/libcxxabi sys-libs/libcxx dev-libs/elfutils cross-arm-none-eabi/binutils cross-arm-none-eabi/gcc cross-arm-none-eabi/gdb cross-x86_64-cros-linux-gnu/llvm-libunwind cross-x86_64-cros-linux-gnu/libcxxabi cross-x86_64-cros-linux-gnu/libcxx cross-x86_64-cros-linux-gnu/go cross-x86_64-cros-linux-gnu/binutils cross-x86_64-cros-linux-gnu/gcc cross-x86_64-cros-linux-gnu/linux-headers cross-x86_64-cros-linux-gnu/glibc cross-x86_64-cros-linux-gnu/gdb cross-i686-pc-linux-gnu/llvm-libunwind cross-i686-pc-linux-gnu/libcxxabi cross-i686-pc-linux-gnu/libcxx cross-i686-pc-linux-gnu/binutils cross-i686-pc-linux-gnu/gcc cross-i686-pc-linux-gnu/linux-headers cross-i686-pc-linux-gnu/glibc cross-i686-pc-linux-gnu/gdb cross-aarch64-cros-linux-gnu/compiler-rt cross-aarch64-cros-linux-gnu/llvm-libunwind cross-aarch64-cros-linux-gnu/libcxxabi cross-aarch64-cros-linux-gnu/libcxx cross-aarch64-cros-linux-gnu/go cross-aarch64-cros-linux-gnu/binutils cross-aarch64-cros-linux-gnu/gcc cross-aarch64-cros-linux-gnu/linux-headers cross-aarch64-cros-linux-gnu/glibc cross-aarch64-cros-linux-gnu/gdb cross-armv7m-cros-eabi/compiler-rt cross-armv7m-cros-eabi/binutils cross-armv7m-cros-eabi/gcc cross-armv7m-cros-eabi/gdb dev-lang/rust-bootstrap virtual/target-sdk-post-cross dev-embedded/coreboot-sdk dev-embedded/ti50-sdk dev-lang/go sys-devel/gcc sys-kernel/linux-headers sys-libs/glibc
cmd=['/mnt/host/source/chromite/bin/parallel_emerge', '--oneshot', '--update', '--getbinpkg', '--usepkgonly', 'cross-armv7a-cros-linux-gnueabihf/compiler-rt', 'cross-armv7a-cros-linux-gnueabihf/llvm-libunwind', 'cross-armv7a-cros-linux-gnueabihf/libcxxabi', 'cross-armv7a-cros-linux-gnueabihf/libcxx', 'cross-armv7a-cros-linux-gnueabihf/go', 'cross-armv7a-cros-linux-gnueabihf/binutils', 'cross-armv7a-cros-linux-gnueabihf/gcc', 'cross-armv7a-cros-linux-gnueabihf/linux-headers', 'cross-armv7a-cros-linux-gnueabihf/glibc', 'cross-armv7a-cros-linux-gnueabihf/gdb', 'dev-lang/rust', 'sys-devel/llvm', 'sys-libs/llvm-libunwind', 'sys-libs/libcxxabi', 'sys-libs/libcxx', 'dev-libs/elfutils', 'cross-arm-none-eabi/binutils', 'cross-arm-none-eabi/gcc', 'cross-arm-none-eabi/gdb', 'cross-x86_64-cros-linux-gnu/llvm-libunwind', 'cross-x86_64-cros-linux-gnu/libcxxabi', 'cross-x86_64-cros-linux-gnu/libcxx', 'cross-x86_64-cros-linux-gnu/go', 'cross-x86_64-cros-linux-gnu/binutils', 'cross-x86_64-cros-linux-gnu/gcc', 'cross-x86_64-cros-linux-gnu/linux-headers', 'cross-x86_64-cros-linux-gnu/glibc', 'cross-x86_64-cros-linux-gnu/gdb', 'cross-i686-pc-linux-gnu/llvm-libunwind', 'cross-i686-pc-linux-gnu/libcxxabi', 'cross-i686-pc-linux-gnu/libcxx', 'cross-i686-pc-linux-gnu/binutils', 'cross-i686-pc-linux-gnu/gcc', 'cross-i686-pc-linux-gnu/linux-headers', 'cross-i686-pc-linux-gnu/glibc', 'cross-i686-pc-linux-gnu/gdb', 'cross-aarch64-cros-linux-gnu/compiler-rt', 'cross-aarch64-cros-linux-gnu/llvm-libunwind', 'cross-aarch64-cros-linux-gnu/libcxxabi', 'cross-aarch64-cros-linux-gnu/libcxx', 'cross-aarch64-cros-linux-gnu/go', 'cross-aarch64-cros-linux-gnu/binutils', 'cross-aarch64-cros-linux-gnu/gcc', 'cross-aarch64-cros-linux-gnu/linux-headers', 'cross-aarch64-cros-linux-gnu/glibc', 'cross-aarch64-cros-linux-gnu/gdb', 'cross-armv7m-cros-eabi/compiler-rt', 'cross-armv7m-cros-eabi/binutils', 'cross-armv7m-cros-eabi/gcc', 'cross-armv7m-cros-eabi/gdb', 'dev-lang/rust-bootstrap', 'virtual/target-sdk-post-cross', 'dev-embedded/coreboot-sdk', 'dev-embedded/ti50-sdk', 'dev-lang/go', 'sys-devel/gcc', 'sys-kernel/linux-headers', 'sys-libs/glibc']


...

Mike Frysinger

unread,
Sep 20, 2021, 10:04:30 PM9/20/21
to Matthew Blecker, Chromium OS Development
is this still failing for you ?
-mike

--
--
Chromium OS Developers mailing list: chromiu...@chromium.org
View archives, change email options, or unsubscribe:
https://groups.google.com/a/chromium.org/group/chromium-os-dev

Matthew Blecker

unread,
Oct 6, 2021, 5:36:26 PM10/6/21
to Mike Frysinger, Chromium OS Development
On Mon, Sep 20, 2021 at 7:04 PM Mike Frysinger <vap...@chromium.org> wrote:
is this still failing for you ?
-mike

Yup, update_chroot is still failing with after syncing to main just now with the same error:

[blocks B      ] <net-misc/openssh-8.1_p1-r2 ("<net-misc/openssh-8.1_p1-r2" is blocking cross-x86_64-cros-linux-gnu/glibc-2.32-r16, cross-i686-pc-linux-gnu/glibc-2.32-r16, cross-aarch64-cros-linux-gnu/glibc-2.32-r16, cross-armv7a-cros-linux-gnueabihf/glibc-2.32-r16, sys-libs/glibc-2.32-r16)

Mike Frysinger

unread,
Oct 6, 2021, 5:42:15 PM10/6/21
to Matthew Blecker, Chromium OS Development
please post the full log
$ ./update_chroot >& log
-mike

Matthew Blecker

unread,
Oct 6, 2021, 5:51:32 PM10/6/21
to Mike Frysinger, Chromium OS Development
On Wed, Oct 6, 2021 at 2:42 PM Mike Frysinger <vap...@chromium.org> wrote:
please post the full log
$ ./update_chroot >& log
-mike

 It's attached, from a fresh run just now.
update_chroot_log0.txt

Mike Frysinger

unread,
Oct 6, 2021, 6:06:50 PM10/6/21
to Matthew Blecker, Chromium OS Development
guess you haven't updated this thing in at least a year.  the conflicts are exploding out in a way we don't expect or normally see.

if you want to keep the SDK, you can prob force it forward with a manual upgrade or two like:
$ sudo emerge -GO `qlist -IC glibc zlib`

then see if upgrade_chroot is able to make progress.
-mike

Matthew Blecker

unread,
Oct 6, 2021, 8:22:44 PM10/6/21
to Mike Frysinger, Chromium OS Development
On Wed, Oct 6, 2021 at 3:06 PM Mike Frysinger <vap...@chromium.org> wrote:
guess you haven't updated this thing in at least a year.  the conflicts are exploding out in a way we don't expect or normally see.

Less than a year.  E.g. I'm pretty sure I had fully moved this checkout to `main` before this.  But yeah, I as infrequently as practical and tend to hop between checkouts to avoid syncing, mostly to avoid https://issuetracker.google.com/187794966 and avoid rebasing my local branches all the time.  (I really need to automate that aside from merge conflicts, or find automation that matches my workflow, or maybe adjust my workflow...)
 

if you want to keep the SDK, you can prob force it forward with a manual upgrade or two like:
$ sudo emerge -GO `qlist -IC glibc zlib`

then see if upgrade_chroot is able to make progress.
-mike

Thanks!  That succeeded, and then afterwards update_chroot succeeded.  I haven't built/tested a full OS image with this checkout again yet, but so far so good.

Michael Siejak

unread,
Oct 7, 2021, 12:01:44 AM10/7/21
to Matthew Blecker, Mike Frysinger, Chromium OS Development
What Linux distribution are you on, and what version? I know there is an issue with glibc on impish (Ubuntu 21.10) beta

---
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-os-d...@chromium.org.

Matthew Blecker

unread,
Oct 7, 2021, 1:26:57 PM10/7/21
to Michael Siejak, Mike Frysinger, Chromium OS Development
On Wed, Oct 6, 2021 at 9:01 PM Michael Siejak <msie...@gmail.com> wrote:
What Linux distribution are you on, and what version? I know there is an issue with glibc on impish (Ubuntu 21.10) beta

The host distribution is a close derivative of Debian testing.

Mike is right that this issue is related to how long I waited between syncing + updating this SDK checkout.  I don't think there's any fundamental incompatibility with the host system, as I haven't run into this with other CrOS checkouts/chroots on the same machine.
Reply all
Reply to author
Forward
0 new messages