View Issue Details

IDProjectCategoryView StatusLast Update
0017318CentOS-7cmakepublic2020-05-03 16:31
Reporterhobbes1069 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
PlatformLinuxOSCentOSOS Version8
Product Version 
Target VersionFixed in Version 
Summary0017318: Base cmake package erroneously provides "cmake3" and "3" versions of binaries
DescriptionI assume this is a leftover from CentOS 7...

I have a library that needs 3.12 as a minimum.
Steps To Reproduce1. Manually install the cmake3 package from EPEL testing into mock
2. Try to build a package which has a BR: cmake 3
3. Mock still tries to install the CentOS cmake package even though the cmake3 package is already installed.
Additional InformationThere is a cmake3 package in Fedora EPEL for 3.17.x which will be unusable due the provides in the CentOS cmake package:

# dnf repoquery --provides cmake
Last metadata expiration check: 0:13:16 ago on Sun 03 May 2020 07:25:33 AM CDT.
bundled(kwsys)
bundled(md5-deutsch)
cmake = 3.11.4-3.el8
cmake(x86-64) = 3.11.4-3.el8
cmake3 = 3.11.4-3.el8

# dnf repoquery --whatprovides cmake3
Last metadata expiration check: 0:17:30 ago on Sun 03 May 2020 07:25:33 AM CDT.
cmake-0:3.11.4-3.el8.x86_64

Running transaction check
Transaction check succeeded.
Running transaction test
Error: Transaction check error:
  file /usr/bin/ccmake3 from install of cmake-3.11.4-3.el8.x86_64 conflicts with file from package cmake3-3.17.2-1.el8.x86_64
  file /usr/bin/cmake3 from install of cmake-3.11.4-3.el8.x86_64 conflicts with file from package cmake3-3.17.2-1.el8.x86_64
  file /usr/bin/cpack3 from install of cmake-3.11.4-3.el8.x86_64 conflicts with file from package cmake3-3.17.2-1.el8.x86_64
  file /usr/bin/ctest3 from install of cmake-3.11.4-3.el8.x86_64 conflicts with file from package cmake3-3.17.2-1.el8.x86_64
TagsNo tags attached.
abrt_hash
URL

Activities

TrevorH

TrevorH

2020-05-03 13:00

manager   ~0036856

Looks more to me like an EPEL bug since cmake in CentOS 8 is already cmake3 and EPEL policy forbids replacing base packages in RHEL. They should not be shipping cmake3 at all as far as I can tell.
hobbes1069

hobbes1069

2020-05-03 13:38

reporter   ~0036857

No, when I request "cmake3" I get just plain "cmake", yes the version of the "cmake" package is 3, but it's 3.11, so there is no package conflict.
TrevorH

TrevorH

2020-05-03 13:59

manager   ~0036858

The problem is not just that cmake Provides cmake3, which it probably should since it is. It's that both packages ship the same files and claim to own them so you cannot have both installed at the same time. Also, when I 'dnf install cmake3' I get the cmake3 package from EPEL playground not cmake from AppStream. I think this is an EPEL bug and should be raised and tracked in the Fedora EPEL section of bugzilla.redhat.com. It's not a CentOS bug since RHEL ship exactly the same cmake with the same Provides:. Either EPEL should not be shipping the package at all or it should be entirely self-contained and able to be parallel installed alongside the distro cmake.
hobbes1069

hobbes1069

2020-05-03 16:31

reporter   ~0036860

So really this is an RHEL bug. Since cmake 2 is not en EL 8, the cmake package IS the main package, and it should not be making symlinks to cmake3, ctest3, cpack3. I still think this got inherited from EL 7 which had cmake version 2 as the base cmake package.

Issue History

Date Modified Username Field Change
2020-05-03 12:51 hobbes1069 New Issue
2020-05-03 13:00 TrevorH Note Added: 0036856
2020-05-03 13:38 hobbes1069 Note Added: 0036857
2020-05-03 13:59 TrevorH Note Added: 0036858
2020-05-03 16:31 hobbes1069 Note Added: 0036860