Simon King wrote: > I found softlinks libstdc++.so.6 both in /usr/lib/ and /usr/lib64/. Even > after building gcc 4.2.1, they pointed to libstdc++.so.6.8, although gcc > 4.2.1 provides libstdc++.so.6.9. I changed this manually. When you configure gcc you give it a --prefix. If you don't specify a prefix, the default is /usr/local. This is the tree under which gcc installs itself, and it does not mess with anything outside of that tree. It would be horribly broken if building gcc from source mucked about with anything under /usr/lib or /usr/lib64 unless it was explicitly configured for --prefix=/usr, so what you've observed is the correct behavior: installing gcc with default options does not touch the system compiler. It is essential that software works this way, as it allows for installing multiple versions side-by-side into different prefixes, without any interference between them. It also allows normal users without administrative privileges to install private copies of things, e.g. with --prefix=$HOME/foo/bar. If you really want to replace the default system compiler then you need to configure and install with --prefix=/usr. But that's generally a really, really bad idea because it violates the principle of "don't mess around behind the back of your distro's package management system." This can lead to all kinds of disasterous situations, such as you go to install routine vendor package updates and it overwrites your custom gcc with an updated copy of the vendor's gcc, rendering all the programs you'd compiled with that newer gcc version hopelessly broken. > Do you think this is a definite solution, or might there be other details > that i need to change by hand? At least i'm able to build some rather big > computer algebra system, so, i'm rather confident that everything is > alright now. I personally would never modify symlinks in /usr/lib like that. Again, those symlinks are "owned" by the package management system of your distro which means they could be silently overwritten or modified the next time you install OS updates. The better solution is to just add $prefix/lib to LD_LIBRARY_PATH. If that is not convenient, then add it to /etc/ld.so.conf. Brian