Note: Read the file ../INSTALL first!

In order to use ORBacus with the native SUN C++ compiler SC4.2 or
SC5.0 you must enable template instantiation. You can do this by using
the following option:

CC -pta

If you want to create a library containing code generated by the
IDL-to-C++ translator, you should use CC -pta -xar instead of ar, for
example:

CC -pta -xar -o libMyLib.a obj1.o obj2.o obj3.o

This will create a library libMyLib.a from the object files obj1.o,
obj2.o and obj3.o, including all template instantiations.

Note that under Solaris you must link ORBacus programs with
-lsocket and -lnsl.

In order to compile with 64 bit support under Solaris 7 you have to
add `-DNDEBUG' to the preprocessor flags when running `runconfig'.

The latest patches for SC4.2 have a bug that causes the compiler to
break on some files with error messages like this:

"ORB.cpp", line 265: Error: Formal argument 1 of type const IOP_IOR& in
call to CORBA_ORB::_OB_createObject(const IOP_IOR&) is being passed
OBVarVar<IOP_IOR>.

As a workaround these files have to be compiled with the -g option.

In order to compile ORBacus with SC5.0 the latest compiler patches
(especially patch 107311-05) have to be installed.

We found bugs in the exception handling of SC5.0 that vanished after
compiling with the debug option (-g). Especially the naming service
is affected by these bugs.

Probably due to a bug in the SC5.0 template database handling the
X11 chat demo client doesn't link because of an unresolved symbol.

Concerning SC5.0 also note that compiling the file IntRep_impl.cpp
seems to require an extraordinary amount of virtual memory. Even
without optimization more than 300 MByte memory were needed under
Solaris 7.

In case you are using a multi-threaded ORBacus version with
JThreads/C++, please also follow the instructions from the README
files included with the JThreads/C++ distribution.
