When trying to upgrade egcs-c++ to the package in the updates directory, rpm complains as follows: error: file /usr/lib/libstdc++-2-libc6.1-1-2.9.0.so from install of egcs-c++-1.1.2-13 conflicts with file from package libstdc++-2.9.0-12 Further, the previous versions of egcs-c++ and libstdc++ can't easily be removed without breaking a lot of dependencies. Is it safe to --force the upgrade to the new egcs-c++ package?
Specify both the egcs-c++ and the libstdc++ poackages on the same command line when installing and you won't have to use --force. However, there's a bug in rpm-3.0 in handling shared files, so make sure that you upgrade to rpm-3.0.1 (from ftp.rpm.org). And if all else fails, just add the --force until the right files end up in the right places. Installing each package separately with --force using rpm-3.0 will work ...
One additional remark: The libstdc++ rpm is also built from the egcs source rpm, so matching versions won't conflict. But the recent sparc egcs updates didn't include all the binary rpms that were built from the new egcs source rpm. (apart from libstdc++, there's also cpp, perhaps some other I missed ?) I'd say the proper solution would be to add all the binary rpms from the new egcs source rpm to the updates. (even though some of those rpms may not have changed).