Since the introduction of binutils-config-5 (I suspect) there is no linking of libgcc_s, libstdc++, etc. This means that we need to include LIBPATH in -R in calls to the linker to make sure that our gcc-provided libs which were used during compilation, are also used at runtime. On Solaris I found this problem when compiling cmake, which succeeded to link a c++ program, but at runtime trapped due to ld.so.1 relocation errors. This was due to the fact that the libstdc++.so found by the program (in /usr/lib) was way older and didn't have the symbols the program was compiled against.
I rewrote a wrapper from scratch because I felt the current one was way too complicated. It doesn't do cross or anything, but I wonder how much we need that. We can think about that once we have a need for it. It fixed my linking problems on Solaris.