Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 782817 - binpackage merge order leads to problems when glibc is involved...
Summary: binpackage merge order leads to problems when glibc is involved...
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Binary packages support (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard: was: app-arch/xz-utils require sys-li...
Keywords:
Depends on: 753500
Blocks:
  Show dependency tree
 
Reported: 2021-04-14 11:11 UTC by INODE64 Sistemas
Modified: 2023-12-10 22:40 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge.log (buggentoo.txt,5.72 KB, text/plain)
2021-04-15 06:14 UTC, INODE64 Sistemas
Details

Note You need to log in before you can comment on or make changes to this bug.
Description INODE64 Sistemas 2021-04-14 11:11:17 UTC
When upgrade from older sys-libs/glibc versions when it's being used "emerge --usepkgonly world"

May show this error:


>>> Emerging binary (11 of 534) app-arch/zstd-1.4.9::gentoo
 * zstd-1.4.9.tbz2 MD5 SHA1 size ;-) ...                                 [ ok ]
>>> Extracting info
>>> Extracting app-arch/zstd-1.4.9
zstd: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by /lib64/liblzma.so.5)
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
command 'zstd -d --long=31' failed with status 1


Reproducible: Always
Comment 1 Mike Gilbert gentoo-dev 2021-04-15 02:10:50 UTC
This bug report really does not contain sufficient information.

What version of glibc was app-arch/xz-utils built against? (a)

What version of glibc was installed when you encountered this error? (b)

If version a is greater than version b, how exactly did you end up in that situation?

These are questions that should be figured out in a support channel. If you identify an actual bug, feel free to re-open this.
Comment 2 Mike Gilbert gentoo-dev 2021-04-15 02:29:52 UTC
My best guess is that you have <sys-libs/glibc-2.32 installed, and you are installing a binpkg of app-arch/xz-utils built against >=sys-libs/glibc-2.32.

There seems to be some special handling in Portage to force glibc to be upgraded first, but perhaps you stumbled upon an edge-case.
Comment 3 Zac Medico gentoo-dev 2021-04-15 02:39:20 UTC
It looks like it's due to PORTAGE_PACKAGE_ATOM pulling in zstd, which makes it fallout from bug 715108.

The merge order calculation uses these constants:

lib/portage/const.py-PORTAGE_PACKAGE_ATOM     = "sys-apps/portage"
lib/portage/const.py:LIBC_PACKAGE_ATOM        = "virtual/libc"
lib/portage/const.py-OS_HEADERS_PACKAGE_ATOM  = "virtual/os-headers"
Comment 4 INODE64 Sistemas 2021-04-15 06:11:48 UTC
I have started to update a server a little outdated, The server had installed sys-libs/glibc-2.29-r7 and app-arch/xz-utils was compiled with sys-libs/glibc-2.32-r7
Comment 5 INODE64 Sistemas 2021-04-15 06:14:10 UTC
Created attachment 699912 [details]
emerge.log

This is emerge log
Comment 6 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-04-28 21:35:51 UTC
(In reply to Mike Gilbert from comment #2)
> My best guess is that you have <sys-libs/glibc-2.32 installed, and you are
> installing a binpkg of app-arch/xz-utils built against >=sys-libs/glibc-2.32.
> 
> There seems to be some special handling in Portage to force glibc to be
> upgraded first, but perhaps you stumbled upon an edge-case.

Yeah, this seems to be what just happened to me too.
Comment 7 Andreas K. Hüttel archtester gentoo-dev 2021-08-06 21:13:01 UTC
(In reply to INODE64 Sistemas from comment #4)
> I have started to update a server a little outdated, The server had
> installed sys-libs/glibc-2.29-r7 and app-arch/xz-utils was compiled with
> sys-libs/glibc-2.32-r7

Ack. Not sure how it is handled in portage, but that needs improvement.
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-10 22:39:47 UTC
A 90% solution has been implemented in bug 913628 which should prevent this happening.

I'll close this accordingly, given bug 753500 tracks the more general solution to this.