On Sat, 11 Apr 2015 03:07:19 +0300, Daniel Letai wrote:
Requires: libstdc++%{gcc_suffix} = %{version}-%{release}
Requires: libstdc++%{gcc_suffix}-devel = %{version}-%{release}
Autoreq: true
Provides: gcc-c++
and gcc_suffix can be 474/484/492/etc.
This causes a conflict with binutils;
rpm -q --conflicts binutils
gcc-c++ < 4.0.0
and if trying yum install:
--> Processing Conflict: binutils-2.20.51.0.2-5.42.el6.x86_64 conflicts
gcc-c++ < 4.0.0
--> Finished Dependency Resolution
Error: binutils conflicts with gcc484-c++-4.8.4-1.el6.x86_64
It seems to me from reading about the conflicts tag that this behavior is
wrong. Without version in the provides, it should be assumed to be a
virtual package, so conflict based on version should not happen.
Am I wrong and this is the expected behavior?
You provide _any_ version-release, i.e. also "< 4.0.0" that conflicts.
I don't know if the correct solution is to provide a version in
the
provides: tag
Yes, it is.
(will it affect yum update, i.e. cause yum to replace gcc-c++
with gcc484-c++ even though there is no file conflict)
It's a virtual package. It doesn't upgrade (= replace) the gcc-c++
package. Only with an added "Obsoletes" tag that would happen.
or to force
installation with nodeps,
???
or something else.