Try to have a look at what's the compiler you are using. As the gcc compiler is not compatible with the Sun cc compiler.
You mentioned migration in your post, which I think might partially explain why the things are failing. Are you migrating to a different SUN OS?
Another thought, I used to get weired behaviour on my solaris system, with inconsistent ordering of /usr/local/lib and /usr/lib, etc., in the PATH and LD_LIBRARY_PATH, so one version of the program was started with another version of the so.