packages icon indicating copy to clipboard operation
packages copied to clipboard

[libc++1 dependency] (Version: 19.2.0)

Open gitmewai opened this issue 3 years ago • 8 comments

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

gitmewai avatar Jul 05 '22 05:07 gitmewai

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

MonsieurNicolas avatar Jul 05 '22 23:07 MonsieurNicolas

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

leighmcculloch avatar Jul 05 '22 23:07 leighmcculloch

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

gitmewai avatar Jul 06 '22 02:07 gitmewai

@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

gitmewai avatar Jul 28 '22 02:07 gitmewai

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.

jacekn avatar Jul 29 '22 10:07 jacekn

How about keeping the dependency on libc++1-8? Why has stellar-core changed to libc++1-10 starting at 19.2.0?

gitmewai avatar Jul 29 '22 15:07 gitmewai

And when is the deadline on upgrading to stellar-core 19.2.0 or later release? @MonsieurNicolas Thanks

gitmewai avatar Aug 04 '22 00:08 gitmewai

And when is the deadline on upgrading to stellar-core 19.2.0 or 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.

MonsieurNicolas avatar Aug 18 '22 00:08 MonsieurNicolas