Bug#955144: libclang-dev: package could not be installed

Simon McVittie smcv at debian.org
Tue Mar 31 09:34:04 BST 2020


Control: reopen 955144

I'm reopening this because libclang-dev is uninstallable in a pure
unstable system due to gcc bug #954826, and the intended solution to
#954826 seems to be to remove gcc 8, after which libclang-dev will still
be uninstallable.

Workaround: install libobjc-8-dev, libgcc-8-dev, libstdc++-8-dev
from testing, and do not let them be upgraded to unstable.

Sylvestre Ledru wrote:
> sudo apt install libclang-dev -t unstable
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> The following additional packages will be installed:
>    libclang-9-dev (1:9.0.1-10)
> The following NEW packages will be installed:
>    libclang-9-dev (1:9.0.1-10)
>    libclang-dev (1:9.0-49.1)
> 0 upgraded, 2 newly installed, 0 to remove and 407 not upgraded.
> Need to get 16.1 MB of archives.
> After this operation, 151 MB of additional disk space will be used.
> Do you want to continue? [Y/n]

I think this is because you have packages from testing installed. If
you don't, you get something like this (I'm testing in a relatively
minimal autopkgtest VM created by vmdebootstrap, but piuparts or
buildds would have similar issues):

# dpkg-query -W
(204 packages, see https://paste.debian.net/1137522/ if the full list
matters to you)
# apt install libclang-dev
...
The following packages have unmet dependencies:
 libclang-dev : Depends: libclang-9-dev (>= 9~) but it is not going to be installed
(...after pulling on the thread a bit...)
# apt install libclang-dev libclang-9-dev libobjc-8-dev libgcc-8-dev libstdc++-8-dev
...
The following packages have unmet dependencies:
 libgcc-8-dev : Depends: libgcc-s1 (>= 1:8.4.0-2) but 10-20200324-1 is to be installed

I think the options to resolve this bug are:

- Move llvm-toolchain-9 from gcc-8 development libraries to -9 or -10
  (I don't know whether this is a simple binNMU or whether it needs more
  intrusive changes)
- Change the default to llvm-toolchain-10, as has already happened in
  unstable
- Convince the gcc-8 maintainer to fix #954826 by removing the epoch from
  the dependency (and possibly disabling gnat, since apparently gnat-8 is
  no longer available) instead of by removing the package

I hope this helps,
    smcv



More information about the Pkg-llvm-team mailing list