At present I have two versions of gcc installed on my system, and switch between them using gcc-config. The reason for using the older version is that I have distcc set up to use a gcc 4.1.2 cross compiler on my windows machine (cygwin), that I can't be bothered to upgrade. So I have ended up having part of my packages compiled with 4.1.2 and others with 4.3.2. Some don't build with 4.1.2 and/or distcc, so then I use gcc-config to switch to 4.3.2 and build with that, disabling distcc.
This seems to work, at least most of the time. More recently, it appears that after switching to 4.1.2 using gcc-config, sourcing /etc/profile, applications built with the newer gcc don't seem to run. They complain about a missing symbol CXX_...4.3.2 or such .. But I can work around this by switching back to the newer gcc.
I'm wondering if mixing these was a terrible idea.
I wouldn't have thought that building an package with one gcc version or another would make a difference, as long as they linked to the same glibc library. Are there any reasons why I shouldn't be doing this? Also, can anyone explain why gcc-config 'breaks' applications temporarily?
Thanks in advance!



