[Bug 1175983] New: zypper dup problem: clang-devel-9.0.1-lp152.1.1.x86_64 requires clang9-devel = 9.0.1, but this requirement cannot be provided
![](https://seccdn.libravatar.org/avatar/a895f78a81a109471893519443e4d933.jpg?s=120&d=mm&r=g)
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983 Bug ID: 1175983 Summary: zypper dup problem: clang-devel-9.0.1-lp152.1.1.x86_64 requires clang9-devel = 9.0.1, but this requirement cannot be provided Classification: openSUSE Product: openSUSE Distribution Version: Leap 15.2 Hardware: x86-64 OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Upgrade Problems Assignee: screening-team-bugs@suse.de Reporter: Ulrich.Windl@rz.uni-regensburg.de QA Contact: jsrain@suse.com Found By: --- Blocker: --- Running "zypper dup" like this: # sudo zypper --releasever 15.2 ref # sudo zypper --releasever 15.2 dup Results in: Computing distribution upgrade... 3 Problems: Problem: clang-devel-9.0.1-lp152.1.1.x86_64 requires clang9-devel = 9.0.1, but this requirement cannot be provided Problem: llvm-devel-9.0.1-lp152.1.1.x86_64 requires llvm9-devel = 9.0.1, but this requirement cannot be provided Problem: llvm-gold-9.0.1-lp152.1.1.x86_64 requires llvm9-gold = 9.0.1, but this requirement cannot be provided This looks like a packaging problem to me. -- You are receiving this mail because: You are on the CC list for the bug.
![](https://seccdn.libravatar.org/avatar/a895f78a81a109471893519443e4d933.jpg?s=120&d=mm&r=g)
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983#c2
Ulrich Windl
If you need to keep one of those llvm7 subpackages, you can't have llvm-devel 9.
Two issues with that: Aren't the package names "clang7" vs. "clang9" chosen to _allow_ co-existance of both versions? And if not, wouldn't "Obsoletes:" package metadata help zypper to resolve the conflict? -- You are receiving this mail because: You are on the CC list for the bug.
![](https://seccdn.libravatar.org/avatar/a895f78a81a109471893519443e4d933.jpg?s=120&d=mm&r=g)
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983#c3
Aaron Puchert
Screenshot when trying to upgrade clang-devel from 7.01 to 9.01 in YaST Thanks, that's the info I needed.
(In reply to Aaron Puchert from comment #1)
If you need to keep one of those llvm7 subpackages, you can't have llvm-devel 9.
Two issues with that: Aren't the package names "clang7" vs. "clang9" chosen to _allow_ co-existance of both versions? Yes, and you can have both clang7 and clang9 installed. Similarly for llvmX, and obviously libclangX and libLLVMX. But devel packages of different versions can generally not coexist: they contain header files (what should "#include
" do when multiple versions are installed?) and an unversioned symlink like libclang.so -> libclang.so.9, for example. That's needed to make "-lclang" on the linker command line work. So we can have only one.
The other thing is llvmX-gold and llvmX-polly. These are actually plugins, and are currently unversioned, so they can't coexist. Allowing them to coexist is not trivial unfortunately. For polly we'd need some logic in Clang probably to make sure we pull in the right version, and for the gold plugin I'm actually not sure whether that's passed as an argument by Clang or whether ld.gold chooses that by itself. Given that the package contains a symlink in /usr/lib/bfd-plugins/ I'm suspecting the latter.
And if not, wouldn't "Obsoletes:" package metadata help zypper to resolve the conflict? I'm not sure about that, because LLVM is not backwards-compatible across major versions in some ways. So we are in fact not obsoleting the old packages. If you happen to be interested in Haskell and want to compile ghc with LLVM support, you'll need a specific version, for example. You can't use the newest version.
So if you don't mind I'll close this, because it's mostly expected and with regards to gold and polly hard to change. Of course I'll take patches (ideally if they have landed upstream), but I don't have the time to work on it myself. -- You are receiving this mail because: You are on the CC list for the bug.
![](https://seccdn.libravatar.org/avatar/a895f78a81a109471893519443e4d933.jpg?s=120&d=mm&r=g)
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983#c4
--- Comment #4 from Ulrich Windl
![](https://seccdn.libravatar.org/avatar/a895f78a81a109471893519443e4d933.jpg?s=120&d=mm&r=g)
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983#c5
Aaron Puchert
Final remark: It's all quite complicated for the user: clang-devel is upgraded from v7 to v9, but there is an additional clang7-devel and clang9-devel. That's a good point: clang-devel is a metapackage requiring the latest version of clangX-devel, and I could make that obsolete older versions of clangX-devel. Because users that have this package probably just want the latest version.
I'll see if I can make that work, but I can't promise that this will end up in Leap 15.2, because there LLVM comes from SLES. So most likely I'll only fix this in TW and then Leap 15.3 or whatever comes next might have the Obsoletes.
All of those packages have the same summary. Almost, clang-devel has an additional paragraph:
This package is a dummy package that depends on the version of clang-devel that openSUSE currently supports. Packages that don't require a specific Clang version should depend on this.
-- You are receiving this mail because: You are on the CC list for the bug.
![](https://seccdn.libravatar.org/avatar/a895f78a81a109471893519443e4d933.jpg?s=120&d=mm&r=g)
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983
http://bugzilla.opensuse.org/show_bug.cgi?id=1175983#c6
--- Comment #6 from Ulrich Windl
... All of those packages have the same summary.
(In reply to Aaron Puchert from comment #5) ...
Almost, clang-devel has an additional paragraph:
You are mixing RPM "Summary" with RPM "Description". As said the summary is identical for those packages. -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com