View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0017318||CentOS-7||cmake||public||2020-05-03 12:51||2020-05-03 16:31|
|Summary||0017318: Base cmake package erroneously provides "cmake3" and "3" versions of binaries|
|Description||I assume this is a leftover from CentOS 7... |
I have a library that needs 3.12 as a minimum.
|Steps To Reproduce||1. 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 Information||There 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.
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.
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
|Tags||No tags attached.|
|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.|
|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.|
|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.|
|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.|