kdevelop, libLLVM and libLLVM3_8

Hi,

I use Tumbleweed. I’ve got a problem installing kdevelop5. When I try to install kdevelop5 it’s a conflict between different versions of ibLLVM. I’ve got libLLVM from System packages but kdevelop wants libLLVM3_8. Thing is that if I try to uninstall libLLVM (which also is at version 3.8) almost all my tumbleweed installation is to be removed. I think I’m lost here. Help would be appreciated.

regards,

Please post your repo list:

zypper lr -d

And the exact conflict message.

You could install kdevelop4 as a workaround, which doesn’t use libLLVM (by default, unless you install the clang plugin too).

PS: I had a quick look and kdevelop5 does not require libLLVM(3_8) at all. It requires libclang3_8, which in turn requires libLLVM3_8.
I suspect your libLLVM comes from a 3rd party repo though, as it isn’t available in Tumbleweed.
What does this output?

rpm -qi libLLVM

Here it is. First the repos and after that the output from rpm. I had kdevelop4 installed right before this but I uninstalled it before trying with kdevelop5. I also included a zypper se -s libLLVM if that would give anything.

:/ # LANG=en zypper lr -d
Repository priorities are without effect. All enabled repositories share the same priority.

#  | Alias                               | Name                                                                                            | Enabled | GPG Check | Refresh | Priority | Type     | URI                                                                                  | Service
---+-------------------------------------+-------------------------------------------------------------------------------------------------+---------+-----------+---------+----------+----------+--------------------------------------------------------------------------------------+--------
 1 | Application_Geo                     | Applications related to the earth (GIS, Mapping, geodesy, GPS, astronomy) (openSUSE_Tumbleweed) | Yes     | (r ) Yes  | No      |   99     | rpm-md   | http://download.opensuse.org/repositories/Application:/Geo/openSUSE_Tumbleweed/      |        
 2 | google-chrome                       | google-chrome                                                                                   | Yes     | (r ) Yes  | Yes     |   99     | rpm-md   | http://dl.google.com/linux/chrome/rpm/stable/x86_64                                  |        
 3 | google-chrome-beta                  | google-chrome-beta                                                                              | Yes     | (r ) Yes  | Yes     |   99     | rpm-md   | http://dl.google.com/linux/chrome/rpm/stable/x86_64                                  |        
 4 | graphics                            | Graphics Project (openSUSE_Tumbleweed)                                                          | Yes     | (r ) Yes  | No      |   99     | rpm-md   | http://download.opensuse.org/repositories/graphics/openSUSE_Tumbleweed/              |        
 5 | home_Kenzu_3d-print                 | 3D Printer Applications (openSUSE_Tumbleweed)                                                   | Yes     | (r ) Yes  | No      |   99     | rpm-md   | http://download.opensuse.org/repositories/home:/Kenzu:/3d-print/openSUSE_Tumbleweed/ |        
 6 | http-download.opensuse.org-417ee6f0 | home:lrupp                                                                                      | Yes     | (r ) Yes  | Yes     |   99     | rpm-md   | http://download.opensuse.org/repositories/home:/lrupp/openSUSE_Factory/              |        
 7 | http-download.opensuse.org-d2f06845 | home:ecsos:server                                                                               | Yes     | (r ) Yes  | Yes     |   99     | rpm-md   | http://download.opensuse.org/repositories/home:/ecsos:/server/openSUSE_Factory/      |        
 8 | http-download.videolan.org-8bd7af8a | Videolan                                                                                        | Yes     | (r ) Yes  | Yes     |   99     | rpm-md   | http://download.videolan.org/SuSE/Tumbleweed/                                        |        
 9 | localrpm                            | localrpm                                                                                        | Yes     | ( p) Yes  | No      |   99     | plaindir | dir:///usr/local/rpms                                                              |        
10 | repo-debug                          | openSUSE-Tumbleweed-Debug                                                                       | Yes     | (r ) Yes  | Yes     |   99     | yast2    | http://download.opensuse.org/debug/tumbleweed/repo/oss/                              |        
11 | repo-non-oss                        | openSUSE-Tumbleweed-Non-Oss                                                                     | Yes     | (r ) Yes  | Yes     |   99     | yast2    | http://download.opensuse.org/tumbleweed/repo/non-oss/                                |        
12 | repo-oss                            | openSUSE-Tumbleweed-Oss                                                                         | Yes     | (r ) Yes  | Yes     |   99     | yast2    | http://download.opensuse.org/tumbleweed/repo/oss/                                    |        
13 | repo-update                         | openSUSE-Tumbleweed-Update                                                                      | Yes     | (r ) Yes  | Yes     |   99     | rpm-md   | http://download.opensuse.org/update/tumbleweed/                                      |        
:/ # rpm -qi libLLVM
Name        : libLLVM
Version     : 3.8.0
Release     : 10.2
Architecture: x86_64
Install Date: fre  9 sep 2016 08:39:43
Group       : Development/Libraries/C and C++
Size        : 43179416
License     : NCSA
Signature   : RSA/SHA256, fre  2 sep 2016 12:50:23, Key ID b88b2fd43dbdc284
Source RPM  : llvm-3.8.0-10.2.src.rpm
Build Date  : fre  2 sep 2016 12:37:04
Build Host  : build77
Relocations : (not relocatable)
Packager    : http://bugs.opensuse.org
Vendor      : openSUSE
URL         : http://www.llvm.org
Summary     : Libraries for LLVM
Description :
This package contains the shared libraries needed for LLVM.
Distribution: openSUSE Tumbleweed

:/ # LANG=en zypper se -s libLLVM
Loading repository data...
Reading installed packages...

S | Name                       | Type    | Version    | Arch   | Repository               
--+----------------------------+---------+------------+--------+--------------------------
i | libLLVM                    | package | 3.8.0-10.2 | x86_64 | (System Packages)        
i | libLLVM-32bit              | package | 3.8.0-10.2 | x86_64 | (System Packages)        
  | libLLVM3_8                 | package | 3.8.1-5.1  | x86_64 | openSUSE-Tumbleweed-Oss  
  | libLLVM3_8                 | package | 3.8.1-5.1  | i586   | openSUSE-Tumbleweed-Oss  
  | libLLVM3_8-32bit           | package | 3.8.1-5.1  | x86_64 | openSUSE-Tumbleweed-Oss  
  | libLLVM3_8-debuginfo       | package | 3.8.1-5.1  | x86_64 | openSUSE-Tumbleweed-Debug
  | libLLVM3_8-debuginfo       | package | 3.8.1-5.1  | i586   | openSUSE-Tumbleweed-Debug
  | libLLVM3_8-debuginfo-32bit | package | 3.8.1-5.1  | x86_64 | openSUSE-Tumbleweed-Debug

Sorry. Forgot the conflict message.

Checking for file conflicts: .............................................................................................................................................[error]
Detected 114 file conflicts:

File /usr/lib64/libLLVMAArch64AsmParser.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAArch64AsmPrinter.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAArch64CodeGen.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAArch64Desc.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAArch64Disassembler.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAArch64Info.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAArch64Utils.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAMDGPUAsmParser.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAMDGPUAsmPrinter.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAMDGPUCodeGen.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAMDGPUDesc.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAMDGPUInfo.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAMDGPUUtils.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMARMAsmParser.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMARMAsmPrinter.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMARMCodeGen.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMARMDesc.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMARMDisassembler.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMARMInfo.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAnalysis.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAsmParser.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMAsmPrinter.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMBPFAsmPrinter.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMBPFCodeGen.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMBPFDesc.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMBPFInfo.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMBitReader.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMBitWriter.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMCodeGen.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMCore.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMCppBackendCodeGen.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMCppBackendInfo.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMDebugInfoCodeView.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMDebugInfoDWARF.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMDebugInfoPDB.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMExecutionEngine.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMHexagonAsmParser.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMHexagonCodeGen.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMHexagonDesc.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMHexagonDisassembler.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

File /usr/lib64/libLLVMHexagonInfo.so.3.8
  from install of
     libLLVM3_8-3.8.1-5.1.x86_64 (openSUSE-Tumbleweed-Oss)
  conflicts with file from package
     libLLVM-3.8.0-10.2.x86_64 (@System)

--deleted a lot of same messages because the forum software didn't like the large amount of text---

File conflicts happen when two packages attempt to install files with the same name but different contents. If you continue, conflicting files will be replaced losing the previous content.
Continue? [yes/no] (no): 

Ok, so this libLLVM does in fact come from Tumbleweed, but it’s very outdated.
You need to remove it and install libLLVM3_8 instead (at the same time).

This should do:

sudo zypper in libLLVM3_8 -libLLVM

(if you get a conflict, please post it)
Or use YaST.

I would consider it a packaging bug though that libLLVM3_8 doesn’t replace libLLVM automatically…

That are “just” file conflicts, you could ignore them.
Though the files would be removed if you ever uninstall libLLVM, thus breaking libLLVM3_8 too.

zypper in libLLVM3_8 -libLLVM did it. After that I could install kdevelop5. Running it as we speak lol!

Many thanks.