aminya / setup-cpp

Install all the tools required for building and testing C++/C projects.
Apache License 2.0
195 stars 31 forks source link

Ubuntu LLVM 18 conflicts with LLVM 17 #238

Closed aminya closed 1 month ago

aminya commented 7 months ago
          Here's the error for installing LLVM 18. It seems to conflict with LLVM 17
Repository: 'deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main'
Description:
Archive for codename: llvm-toolchain-jammy-18 components: main
More info: http://apt.llvm.org/jammy/
Adding repository.
Adding deb entry to /etc/apt/sources.list.d/archive_uri-http_apt_llvm_org_jammy_-jammy.list
Adding disabled deb-src entry to /etc/apt/sources.list.d/archive_uri-http_apt_llvm_org_jammy_-jammy.list
Get:1 file:/var/lib/preinstalled-pool jammy InRelease
Ign:1 file:/var/lib/preinstalled-pool jammy InRelease
Get:2 file:/var/lib/preinstalled-pool jammy Release [3,949 B]
Get:2 file:/var/lib/preinstalled-pool jammy Release [3,949 B]
Hit:5 https://download.docker.com/linux/ubuntu jammy InRelease
Hit:6 https://storage.googleapis.com/bazel-apt stable InRelease
Hit:7 https://deb.nodesource.com/node_20.x nodistro InRelease
Hit:8 http://archive.ubuntu.com/ubuntu jammy InRelease
Hit:9 https://packages.microsoft.com/repos/edge stable InRelease
Hit:10 http://deb.volian.org/volian scar InRelease
Ign:11 https://releases.warp.dev/linux/deb stable InRelease
Hit:12 https://packages.microsoft.com/repos/code stable InRelease
Hit:14 https://releases.warp.dev/linux/deb stable Release
Hit:15 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Hit:3 https://apt.llvm.org/jammy llvm-toolchain-jammy-17 InRelease
Get:4 https://apt.llvm.org/jammy llvm-toolchain-jammy-18 InRelease [6,833 B]
Hit:16 http://security.ubuntu.com/ubuntu jammy-security InRelease
Hit:17 https://apt.packages.shiftkey.dev/ubuntu any InRelease
Get:18 http://archive.neon.kde.org/user jammy InRelease [189 kB]
Hit:19 https://ppa.launchpadcontent.net/mozillateam/ppa/ubuntu jammy InRelease
Hit:21 https://ppa.launchpadcontent.net/ubuntu-toolchain-r/test/ubuntu jammy InRelease
Get:22 https://apt.llvm.org/jammy llvm-toolchain-jammy-18/main amd64 Packages [12.5 kB]
Fetched 208 kB in 2s (96.3 kB/s)
Reading package lists... Done
W: file:/var/lib/preinstalled-pool/dists/jammy/Release.gpg: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
W: Target Packages (main/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target Packages (main/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11 (main/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11 (main/dep11/Components-all.yml) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11-icons-small (main/dep11/icons-48x48.tar) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11-icons (main/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11-icons-hidpi (main/dep11/icons-64x64@2.tar) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11-icons-large (main/dep11/icons-128x128.tar) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target CNF (main/cnf/Commands-amd64) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target CNF (main/cnf/Commands-all) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target Packages (main/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target Packages (main/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11 (main/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11 (main/dep11/Components-all.yml) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11-icons-small (main/dep11/icons-48x48.tar) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11-icons (main/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11-icons-hidpi (main/dep11/icons-64x64@2.tar) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target DEP-11-icons-large (main/dep11/icons-128x128.tar) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target CNF (main/cnf/Commands-amd64) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
W: Target CNF (main/cnf/Commands-all) is configured multiple times in /etc/apt/sources.list.d/microsoft-edge-beta.list:3 and /etc/apt/sources.list.d/microsoft-edge.list:1
Updated:   file:/var/lib/preinstalled-pool jammy InRelease
Ignored:   file:/var/lib/preinstalled-pool jammy InRelease
Updated:   file:/var/lib/preinstalled-pool jammy Release [4 KB]
Updated:   file:/var/lib/preinstalled-pool jammy Release [4 KB]
No Change: https://storage.googleapis.com/bazel-apt stable InRelease
No Change: https://download.docker.com/linux/ubuntu jammy InRelease
No Change: https://packages.microsoft.com/repos/edge stable InRelease
No Change: http://deb.volian.org/volian scar InRelease
No Change: http://security.ubuntu.com/ubuntu jammy-security InRelease
No Change: https://packages.microsoft.com/repos/code stable InRelease
No Change: https://deb.nodesource.com/node_20.x nodistro InRelease
Ignored:   https://releases.warp.dev/linux/deb stable InRelease
No Change: https://apt.llvm.org/jammy llvm-toolchain-jammy-17 InRelease
No Change: http://archive.ubuntu.com/ubuntu jammy InRelease
No Change: https://releases.warp.dev/linux/deb stable Release
No Change: https://apt.llvm.org/jammy llvm-toolchain-jammy-18 InRelease
No Change: http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Updated:   http://archive.neon.kde.org/user jammy InRelease [189 KB]
No Change: https://apt.packages.shiftkey.dev/ubuntu any InRelease
No Change: https://ppa.launchpadcontent.net/mozillateam/ppa/ubuntu jammy InRelease
No Change: https://ppa.launchpadcontent.net/ubuntu-toolchain-r/test/ubuntu jammy InRelease
Fetched 189 KB in 1s (188.9 KB/s)
3 packages can be upgraded. Run 'nala list --upgradable' to see them.
Starting pkgProblemResolver with broken count: 4
Starting 2 pkgProblemResolver with broken count: 4
Investigating (0) llvm-18-dev:amd64 < none -> 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86 @un pumN Ib >
Broken llvm-18-dev:amd64 Depends on llvm-18:amd64 < none | 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86 @un umH > (= 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86)
  Considering llvm-18:amd64 0 as a solution to llvm-18-dev:amd64 1
  Re-Instated llvm-18-runtime:amd64
  Re-Instated llvm-18:amd64
Investigating (0) lldb-18:amd64 < none -> 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86 @un pumN Ib >
Broken lldb-18:amd64 Depends on liblldb-18:amd64 < none | 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86 @un umH >
  Considering liblldb-18:amd64 1 as a solution to lldb-18:amd64 -1
  Re-Instated liblldb-18:amd64
Broken lldb-18:amd64 Depends on python3-lldb-18:amd64 < none | 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86 @un umH >
  Considering python3-lldb-18:amd64 1 as a solution to lldb-18:amd64 -1
  Re-Instated python3-lldb-18:amd64
Investigating (0) libomp-17-dev:amd64 < 1:17.0.6~++20231209124227+6009708b4367-1~exp1~20231209124336.77 @ii mK Ib >
Broken libomp-17-dev:amd64 Conflicts on libomp-x.y-dev:amd64 < none @un H >
  Considering libomp-18-dev:amd64 -2 as a solution to libomp-17-dev:amd64 -1
  Conflicts//Breaks against version 1:14.0.0-1ubuntu1.1 for libomp-14-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:13.0.1-2ubuntu2.2 for libomp-13-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:15.0.7-0ubuntu0.22.04.3 for libomp-15-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:14.0.0-1ubuntu1 for libomp-14-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:13.0.1-2ubuntu2 for libomp-13-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:12.0.1-19ubuntu3 for libomp-12-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:11.1.0-6 for libomp-11-dev but that is not InstVer, ignoring
Investigating (0) libomp-18-dev:amd64 < none -> 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86 @un pumN Ib >
Broken libomp-18-dev:amd64 Depends on libomp5-18:amd64 < none | 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86 @un umH > (= 1:18.1.3~++20240322073153+ef6d1ec07c69-1~exp1~20240322193300.86)
  Considering libomp5-18:amd64 0 as a solution to libomp-18-dev:amd64 -2
  Re-Instated libomp5-18:amd64
Broken libomp-18-dev:amd64 Conflicts on libomp-x.y-dev:amd64 < none @un H >
  Considering libomp-17-dev:amd64 -1 as a solution to libomp-18-dev:amd64 -2
  Conflicts//Breaks against version 1:14.0.0-1ubuntu1.1 for libomp-14-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:13.0.1-2ubuntu2.2 for libomp-13-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:15.0.7-0ubuntu0.22.04.3 for libomp-15-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:14.0.0-1ubuntu1 for libomp-14-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:13.0.1-2ubuntu2 for libomp-13-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:12.0.1-19ubuntu3 for libomp-12-dev but that is not InstVer, ignoring
  Conflicts//Breaks against version 1:11.1.0-6 for libomp-11-dev but that is not InstVer, ignoring
Done
╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
│ /usr/lib/python3/dist-packages/nala/nala.py:378 in install                                       │
│                                                                                                  │
│   375 │   color_force: bool = COLOR,                                                             │
│   376 ) -> None:                                                                                 │
│   377 │   """Install packages."""                                                                │
│ ❱ 378 │   _install(pkg_names, ctx)                                                               │
│   379                                                                                            │
│   380                                                                                            │
│   381 @nala.command(help=_("Remove packages."))                                                  │
│                                                                                                  │
│ ╭────────────────────────────── locals ──────────────────────────────╮                           │
│ │         assume_yes = None                                          │                           │
│ │        auto_remove = None                                          │                           │
│ │        color_force = None                                          │                           │
│ │                ctx = <click.core.Context object at 0x7aefabe8f220> │                           │
│ │              debug = None                                          │                           │
│ │    default_release = None                                          │                           │
│ │      download_only = None                                          │                           │
│ │        dpkg_option = ['Dpkg::Options::=--force-overwrite']         │                           │
│ │         fix_broken = None                                          │                           │
│ │ install_recommends = None                                          │                           │
│ │   install_suggests = None                                          │                           │
│ │           man_help = None                                          │                           │
│ │          pkg_names = [                                             │                           │
│ │                      │   'clang-18',                               │                           │
│ │                      │   'lldb-18',                                │                           │
│ │                      │   'lld-18',                                 │                           │
│ │                      │   'clangd-18',                              │                           │
│ │                      │   'clang-tidy-18',                          │                           │
│ │                      │   'clang-format-18',                        │                           │
│ │                      │   'clang-tools-18',                         │                           │
│ │                      │   'llvm-18-dev',                            │                           │
│ │                      │   'lld-18',                                 │                           │
│ │                      │   'lldb-18',                                │                           │
│ │                      │   ... +7                                    │                           │
│ │                      ]                                             │                           │
│ │              purge = None                                          │                           │
│ │           raw_dpkg = None                                          │                           │
│ │   remove_essential = None                                          │                           │
│ │             simple = None                                          │                           │
│ │             update = None                                          │                           │
│ │            verbose = None                                          │                           │
│ ╰────────────────────────────────────────────────────────────────────╯                           │
│                                                                                                  │
│ /usr/lib/python3/dist-packages/nala/nala.py:190 in _install                                      │
│                                                                                                  │
│   187 │   │   pkg_error(not_found, cache)                                                        │
│   188 │                                                                                          │
│   189 │   nala_pkgs.user_explicit = [cache[pkg_name] for pkg_name in pkg_names]                  │
│ ❱ 190 │   if not package_manager(pkg_names, cache):                                              │
│   191 │   │   if not (error := BrokenError(cache, broken)).broken_install():                     │
│   192 │   │   │   error.unmarked_error(nala_pkgs.user_explicit)                                  │
│   193                                                                                            │
│                                                                                                  │
│ ╭─────────────────────────────────────── locals ────────────────────────────────────────╮        │
│ │     broken = [                                                                        │        │
│ │              │   <Package: name:'clang-18' architecture='amd64' id:115849>,           │        │
│ │              │   <Package: name:'clang-format-18' architecture='amd64' id:115858>,    │        │
│ │              │   <Package: name:'clang-tidy-18' architecture='amd64' id:115859>,      │        │
│ │              │   <Package: name:'clang-tools-18' architecture='amd64' id:115860>,     │        │
│ │              │   <Package: name:'clangd-18' architecture='amd64' id:115861>,          │        │
│ │              │   <Package: name:'libclang-18-dev' architecture='amd64' id:115872>,    │        │
│ │              │   <Package: name:'libclang-cpp18-dev' architecture='amd64' id:115874>, │        │
│ │              │   <Package: name:'libomp-18-dev' architecture='amd64' id:115891>,      │        │
│ │              │   <Package: name:'libpolly-18-dev' architecture='amd64' id:115894>,    │        │
│ │              │   <Package: name:'lld-18' architecture='amd64' id:115882>,             │        │
│ │              │   ... +2                                                               │        │
│ │              ]                                                                        │        │
│ │      cache = <nala.cache.Cache object at 0x7aefabe8f7c0>                              │        │
│ │        ctx = <click.core.Context object at 0x7aefabe8f220>                            │        │
│ │  not_exist = []                                                                       │        │
│ │  not_found = []                                                                       │        │
│ │  pkg_names = [                                                                        │        │
│ │              │   'clang-18',                                                          │        │
│ │              │   'clang-format-18',                                                   │        │
│ │              │   'clang-tidy-18',                                                     │        │
│ │              │   'clang-tools-18',                                                    │        │
│ │              │   'clangd-18',                                                         │        │
│ │              │   'libclang-18-dev',                                                   │        │
│ │              │   'libclang-common-18-dev',                                            │        │
│ │              │   'libclang-cpp18-dev',                                                │        │
│ │              │   'libclang-rt-18-dev',                                                │        │
│ │              │   'libomp-18-dev',                                                     │        │
│ │              │   ... +5                                                               │        │
│ │              ]                                                                        │        │
│ │ ver_failed = False                                                                    │        │
│ ╰───────────────────────────────────────────────────────────────────────────────────────╯        │
│                                                                                                  │
│ /usr/lib/python3/dist-packages/nala/install.py:926 in package_manager                            │
│                                                                                                  │
│    923 │   │   for pkg_name in pkg_names:                                                        │
│    924 │   │   │   if pkg_name in cache:                                                         │
│    925 │   │   │   │   pkg = cache[pkg_name]                                                     │
│ ❱  926 │   │   │   │   pkg.mark_install(auto_fix=arguments.fix_broken)                           │
│    927 │   return True                                                                           │
│    928                                                                                           │
│    929                                                                                           │
│                                                                                                  │
│ ╭─────────────────────────────── locals ────────────────────────────────╮                        │
│ │     cache = <nala.cache.Cache object at 0x7aefabe8f7c0>               │                        │
│ │     fixer = <apt_pkg.ProblemResolver object at 0x7aefabeb27c0>        │                        │
│ │       pkg = <Package: name:'clang-18' architecture='amd64' id:115849> │                        │
│ │  pkg_name = 'clang-18'                                                │                        │
│ │ pkg_names = [                                                         │                        │
│ │             │   'clang-18',                                           │                        │
│ │             │   'clang-format-18',                                    │                        │
│ │             │   'clang-tidy-18',                                      │                        │
│ │             │   'clang-tools-18',                                     │                        │
│ │             │   'clangd-18',                                          │                        │
│ │             │   'libclang-18-dev',                                    │                        │
│ │             │   'libclang-common-18-dev',                             │                        │
│ │             │   'libclang-cpp18-dev',                                 │                        │
│ │             │   'libclang-rt-18-dev',                                 │                        │
│ │             │   'libomp-18-dev',                                      │                        │
│ │             │   ... +5                                                │                        │
│ │             ]                                                         │                        │
│ │    remove = False                                                     │                        │
│ ╰───────────────────────────────────────────────────────────────────────╯                        │
│                                                                                                  │
│ /usr/lib/python3/dist-packages/apt/package.py:1506 in mark_install                               │
│                                                                                                  │
│   1503 │   │   │   fixer = apt_pkg.ProblemResolver(self._pcache._depcache)                       │
│   1504 │   │   │   fixer.clear(self._pkg)                                                        │
│   1505 │   │   │   fixer.protect(self._pkg)                                                      │
│ ❱ 1506 │   │   │   fixer.resolve(True)                                                           │
│   1507 │   │   self._pcache.cache_post_change()                                                  │
│   1508 │                                                                                         │
│   1509 │   def mark_upgrade(self, from_user=True):                                               │
│                                                                                                  │
│ ╭─────────────────────────────── locals ────────────────────────────────╮                        │
│ │  auto_fix = True                                                      │                        │
│ │ auto_inst = True                                                      │                        │
│ │     fixer = <apt_pkg.ProblemResolver object at 0x7aefabeb2840>        │                        │
│ │ from_user = True                                                      │                        │
│ │      self = <Package: name:'clang-18' architecture='amd64' id:115849> │                        │
│ ╰───────────────────────────────────────────────────────────────────────╯                        │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
Error: E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
Failed to install llvm via system package manager Error: Command failed with exit code 1: sudo 'bash' '/tmp/llvm-setup-cpp.sh' '18' 'all'
Installing llvm 18 x64 via direct downloading
Falling back to LLVM version 17.0.6 -ubuntu-22.04 for the Ubuntu.
Falling back to LLVM version 17.0.6 -ubuntu-22.04 for the Ubuntu.
Falling back to LLVM version 17.0.6 -ubuntu-22.04 for the Ubuntu.
Error: Unsupported target! (platform='linux', version='18'). Try one of the following: {}
::endgroup::
took 33 seconds
llvm failed to install
setup-cpp finished
Run `source ~/.cpprc` or restart your shell to update the environment.

Originally posted by @aminya in https://github.com/aminya/setup-cpp/issues/236#issuecomment-2029195134

Upvote & Fund

@aminya is using Polar.sh so you can upvote and help fund this issue. The funding is received once the issue is completed & confirmed by you.

Thank you in advance for helping prioritize & fund our backlog!


Fund with Polar

aminya commented 6 months ago

The LLVM installer should remove old conflicting versions automatically to avoid such errors.