Created attachment 278495 [details, diff] Patch to fix the issue The update_ldcache() function in modules/env.eselect calls ldconfig without the '-X' argument which causes it to not only update ld.so.conf but upgrade SONAME symlinks as well. This is known to break downgrades with preserve-libs feature of portage. I'd suggest adding '-X' to the ldconfig call (for Linux), in order to let it preserve the symlinks as they were installed by the PM.
Committed to SVN (r817). I'm not sure though what implications this change will have for systems like macos, hpux, or solaris (do they have ldconfig at all)? Adding Prefix team to CC.
they don't, and even if they did, it shouldn't be called unless the user running this has admin privileges
I've added another conditional so that ldconfig will be called only on Linux/GNU and BSD: <http://sources.gentoo.org/cgi-bin/viewvc.cgi/eselect/trunk/modules/env.eselect?r1=817&r2=818>
This is included with eselect-1.2.16 (and I forgot to close this bug when I've released that version).