[libc++1 dependency] (Version: 19.2.0)
Issue Description
We are going to upgrade stellar-core from v19.1.0 to v19.2.0. We found that the libc++ dependencies have been changed from libc++1-8 to libc++1-10:
root@stellar-1:~$ apt info stellar-core=19.1.0-943.e801fd93b.bionic
Package: stellar-core
Version: 19.1.0-943.e801fd93b.bionic
Priority: optional
Section: web
Maintainer: Package Maintainer <[email protected]>
Installed-Size: 9209 kB
Depends: libsqlite3-0 (>= 3.11.0), stellar-core-utils, **libc++1-8**, **libc++abi1-8**, libc6 (>= 2.25), libgcc1 (>= 1:3.0), libpq5
root@stellar-1:~$ apt info stellar-core=19.2.0-966.d18d54aa3.bionic
Package: stellar-core
Version: 19.2.0-966.d18d54aa3.bionic
Priority: optional
Section: web
Maintainer: Package Maintainer <[email protected]>
Installed-Size: 9020 kB
Depends: libsqlite3-0 (>= 3.11.0), stellar-core-utils, **libc++1-10**, **libc++abi1-10**, libc6 (>= 2.25), libgcc1 (>= 1:3.0), libpq5
However, there is no libc++1-10 available on debian (but libc++1-11 as shown below).
root@stellar-1:~$ cat /etc/debian_version
10.12
root@stellar-1:~$ uname -a
Linux stellar-1 4.19.0-20-cloud-amd64 stellar/stellar-core#1 SMP Debian 4.19.235-1 (2022-03-17) x86_64 GNU/Linux
root@stellar-1:~$ apt list libc++1\* -a
Listing... Done
libc++1-11/oldstable 1:11.0.1-2~deb10u1 amd64
libc++1-11/buster-backports,buster-backports 1:11.0.1-2~bpo10+1 amd64
libc++1-7/oldstable 1:7.0.1-8+deb10u2 amd64
libc++1-8/buster-backports,buster-backports,now 1:8.0.1-3~bpo10+1 amd64 [installed,automatic]
libc++1/oldstable 1:7.0-47 amd64
Steps to Reproduce
root@stellar-1:~$ apt install stellar-core
Reading package lists...
Building dependency tree...
Reading state information...
Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
stellar-core : Depends: libc++1-10 but it is not installable
Depends: libc++abi1-10 but it is not installable
Expected Result
It is expected that stellar-core can be installed on debian 10 with dependencies on available libc++ packages on the linux distribution
Actual Result
stellar-core 19.2.0 cannot be installed/upgraded
Your Environment and Setup
stellar-core Version
stellar-core 19.2.0 (upgrade from 19.1.0)
Environment
- OS and version:
Linux stellar-1 4.19.0-20-cloud-amd64 stellar/stellar-core#1 SMP Debian 4.19.235-1 (2022-03-17) x86_64 GNU/Linux - Installed via apt
Thanks for the report. I am moving this to the "packages" repo. I would expect this to work too. We've tested that on Ubuntu 18.04 LTS which is based on an older rev of buster. so it's probably not hard to fix
llvm-toolchain-10 isn't included in any Debian release, some details here on why: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=974788 https://tracker.debian.org/news/1216115/llvm-toolchain-10-removed-from-testing/ https://tracker.debian.org/pkg/llvm-toolchain-10
Could we have the dependencies that are common in both debian and ubuntu (e.g. libc++1-11)? Or is there any specific requirement on stellar-core that should depend on libc++1-10 only?
On ubuntu:
root@ubuntu-1:~$ apt list libc++1-11\*
Listing... Done
libc++1-11/focal-updates 1:11.0.0-2~ubuntu20.04.1 amd64
libc++1-11/focal-updates 1:11.0.0-2~ubuntu20.04.1 i386
root@ubuntu-1:~$ cat /etc/debian_version
bullseye/sid
root@ubuntu-1:~$ uname -a
Linux ubuntu-1 5.13.0-51-generic #58~20.04.1-Ubuntu SMP Tue Jun 14 11:29:12 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
On debian:
root@stellar-1:~$ apt list libc++1-11\* -a
Listing... Done
libc++1-11/oldstable 1:11.0.1-2~deb10u1 amd64
libc++1-11/buster-backports 1:11.0.1-2~bpo10+1 amd64
root@stellar-1:~$ cat /etc/debian_version
10.12
root@stellar-1:~$ uname -a
Linux stellar-1 4.19.0-20-cloud-amd64 #1 SMP Debian 4.19.235-1 (2022-03-17) x86_64 GNU/Linux
Thanks
@MonsieurNicolas the version 19.3.0 still depends on libc++1-10.
Is there any plan to fix this dependency on libc++1-11 instead?
Thanks
Some more context on this: Ubuntu 18.04, which we still support, does not have clang-11 so we can't move to clang11 without dropping support for Ubuntu 18.04. This may be acceptable at this point but I wanted to call that out.
How about keeping the dependency on libc++1-8? Why has stellar-core changed to libc++1-10 starting at 19.2.0?
And when is the deadline on upgrading to stellar-core 19.2.0 or later release? @MonsieurNicolas Thanks
And when is the deadline on upgrading to
stellar-core19.2.0or later release? @MonsieurNicolas Thanks
Assuming no emergency security release (that would be based off latest as we disclose security bugs 30 days after a release that fixes them), we give 90 days to people to upgrade to a given release. As 19.2.0 was released end of June, that means that 19.1.0 may break any time after end of September.