The package contains conflicting -devel packages for multilib arches. tog-pegasus-devel-2.5.1-4.FC6.i386.rpm Preparing... ################################################## file /usr/share/Pegasus/samples/mak/config.mak from install of tog-pegas us-devel-2.5.1-4.FC6 conflicts with file from package tog-pegasus-devel-2.5.1-4. FC6
Yes, only one architecture specific version of tog-pegasus or tog-pegasus-devel can be installed on the same machine, even if the machine supports more than one architecture. There can be only one /usr/sbin/cimserver process, which must be either compiled 32-bit and linked to the /usr/lib/ libraries, or compiled 64-bit and linked to the /usr/lib64/ libraries. There is no support for having both 32-bit and 64-bit versions installed on the same machine, nor any user demand for such, to my knowledge. The tog-pegasus-devel package consists of header files, sample C source, and sample Makefiles, necessary for building software to communicate with the single cimserver process installed - the Makefiles are different depending on whether the 32-bit or the 64-bit version is installed. Much third party software now depends on the single location of the architecture specific Makefile, which must be the correct Makefile for the single installed architecture specific tog-pegasus version. So the installer should be installing only the 64-bit version of the tog-pegasus packages on 64-bit multi-lib machines. It would involve radical deviation from the upstream packaging to try and allow both 64 and 32 bit versions of the libraries and SDK makefiles to co-exist on the same machine - and if this was done, one architecture version of the libraries and makefiles would be useless, as it would be unable to build software able to connect with the single cimserver process. So I think it just doesn't make sense to try to make multi-lib versions of tog-pegasus installable on the same machine, and there is no user demand for it - hence, this is 'NOTABUG'.
There is demand for a *FULL* multilib development environment. And that is defined as allowing anything which has a devel component being available so that you can build, eg, any x86 app on an x86_64 machine with the full devel environment installed. Given that the conflict is just in the platform definition at the top of /usr/share/Pegasus/samples/mak/config.mak, the simple fix is just making that spit an error saying to define the platform if it's not given instead of the current behavior.
That's not an option - the config.mak file is architecture specific, and exists to define the architecture, so that third-party software can depend on config.mak to define the platform specific variables correctly. Not defining the platform in config.mak won't solve the problem, either - both 32-bit and 64-bit devel packages still must provide that file. Users need to just install the 32-bit or the 64-bit tog-pegasus version, not both.
Not an option. It is a *HARD* requirement that the distribution be self-consistent and not include conflicts.
OK, I guess I'll look into making /usr/share/Pegasus/samples/mak/config.mak selectable between the 32-bit and 64-bit versions with links and /sbin/alternatives - that file must exist, and must define the platform, because third party software depends on it.
This is fixed with tog-pegasus-2.5.1-8.fc6 - no more multilib conflicts.