builds for libc 2.32 break all cross toolchains - missing libnss-nis-<arch>-cross
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cross-toolchain-base-ports (Ubuntu) |
Fix Released
|
Critical
|
Unassigned | ||
gcc-10 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
glibc (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
## TL;DR ##
cross-toolchain
libnss-
build those packages themselve.
Most likely, but not surely yet, due to the split of libnss-nisplus from glibc.
## Detail ##
Hi,
I was first seeing this in a qemu build hanging as dependency wait which worked
a day before.
=> https:/
But the build fails at
Missing build dependencies: libnsl-
At first it seemed the Problem came with new glibc:
libc6.
libc6.
Dependency tree - 2.31-0ubuntu9cross1 (worked)
libc6.1-
\- libc6.1-alpha-cross
\- linux-libc-
Dependency tree - 2.32-0ubuntu2cross1 (fails)
libc6.1-
\- libc6.1-alpha-cross
\- linux-libc-
In essence we use gcc-s390x-
gcc-powerpc64-
gcc-riscv64-
libc6.1-
They will pull in their respective cross builds packages:
E.g.: gcc-s390x-linux-gnu
\- gcc-10-
\- libgcc-
\- libc6-dev-
It is not just libnsl-
Here from build logs:
The following packages have unmet dependencies:
libc6-hppa-cross : Depends: libnss-
libc6-ppc64-cross : Depends: libnss-
libc6-
libc6-s390x-cross : Depends: libnss-
libc6-
libc6.
libc6.
This is reproducible as easy as going into groovy proposed (e.g. container)
$ apt install gcc-alpha-linux-gnu
...
The following packages have unmet dependencies:
libc6.
E: Unable to correct problems, you have held broken packages.
This repeats for all arches cross toolchains as outlined above.
The dependency is new in the new version of the packages:
I wondered if I might look the wrong way, but then on IRC I saw:
[09:25] <vorlon> doko: hmm so, Broken libc6-dev-
Depends on rpcsvc-
Which is part of the same scope.
Also clearly the new version is what adds the bad dependencies:
# apt-cache show libc6-riscv64-cross | grep -e ^Vers -e ^Dep
Version: 2.32-0ubuntu2cross1
Depends: libnss-
Version: 2.31-0ubuntu9cross1
That is out of src cross-toolchain
cross-
cross-
Which seems to generate versions along glibc as the packages are then
versioned like: "2.32-0ubuntu2c
I would assume that this is cross-toolchain
src:libnss-nisplus which is new in groovy and states:
Description-en: NSS module for using NIS+ as a naming service
This package provides a Name Service Switch that allows your NIS+ server
act as a name service. This means providing user account information,
group id's, host information, aliases, netgroups, and basically anything
else that you would normally get from /etc flat files.
.
This module was formerly part of glibc, but is now standalone to be able
to link against TI-RPC for IPv6 support.
So maybe that needs to be considered somehow within cross-toolchain
P.S. also adding glibc and gcc-10 bug tasks, but mostly for tracking as those are tightly coupled
Related branches
- Ubuntu Core Development Team: Pending requested
-
Diff: 129 lines (+21/-11)4 files modifieddebian/changelog (+8/-0)
debian/control (+8/-8)
debian/control.in/libc (+2/-2)
debian/rules.d/debhelper.mk (+3/-1)
CVE References
tags: | added: update-excuse |
Changed in gcc-10 (Ubuntu): | |
status: | Incomplete → Invalid |
Changed in glibc (Ubuntu): | |
status: | Incomplete → Fix Committed |
Changed in cross-toolchain-base-ports (Ubuntu): | |
status: | New → Fix Released |
Related Changelog entries from glibc 2.32:
12 * Make libc-dev depend on libnsl-dev.
13 It replaces the development files for the new libnsl library replacing the
14 one shipped by glibc.
15 * Don't check symbols of libnss_nis.so and libnss_nisplus.so libraries.
16 They are not shipped in glibc 2.32
17 * Depend on libnss-nis and libnss-nisplus shipping the libraries dropped
18 in 2.32