The Solaris version of EAServer 5.0 supports 4.x and 6.x versions of the Solaris C++ compiler. The binary format of executable files and libraries differs between the two compiler versions, so you must choose one version for all C++ components running in a server.
When starting the server, specify the compiler compatibility version with the -compilerversion option. For example, for compatibility with the 6.x compiler:
serverstart.sh -compilerversion 6x
Or for compatibility with the version 4.x compiler:
serverstart.sh -compilerversion 4x
If you run an EAServer cluster, all servers in the cluster must use the same compiler version.
When linking component shared libraries or client binaries, you must link with the EAServer libraries that match your compiler version. Choose the appropriate directory from those listed below:
lib contains libraries that are compatible with the 6.x compiler, stripped of symbol information for production use.
devlib contains libraries that are compatible with the 6.x compiler, for debugging use.
lib_sol4x contains libraries that are compatible with the 4.x compiler, for production use.
devlib_sol4x contains libraries that are compatible with the 4.x compiler, for debugging use.
The generated make files for C++ components link with 6.x libraries by default. To use 4.x libraries, edit the definition of the LIB macro in the makefile, and change the paths to the library directories.
When running EAServer clients that are compiled from C++, set the LD_LIBRARY_PATH variable to include libraries that are compatible with the compiler version used to create the client executable.