[omniORB] Newbie questions: Solaris/gcc, event service, library names

Sai-Lai Lo s.lo@uk.research.att.com
Wed, 6 Jun 2001 10:57:51 -0000


Bruce,

> * Is there some reason why the version numbers of the libraries
>   are mangled into the filenames? eg omniORB303_rtd.dll. Not that
>   it is a big deal, but it makes for a configuration issue when
>   upgrading to a new version. Unix makefiles are okay, but NT
>   project files... Can I just rename the libraries and DLLs?

Since NT DLLs do not have the equivalent mechanism of 'soname' as in most
Unix shared libraries, we have to opt to include the version number into the
file name to allow applications linked with different versions of omniORB to
coexist on the same machine.

As a general rule, when we add features to omniORB and have to change the
runtime library API, we increment the minor (the middle digit) or the major
version number. Using current naming scheme allows one to move to omniORB
3.0.3 while she still has applications running on top of omniORB 2.8.0. If
we remove the version number from the DLL name, we will have the DLL
nightmare when someone find an application keep crashing because someone
else has installed a new application with a newer version of omniORB.

Out of all the unix platforms, AIX seems to be the only one with the same
problem as NT. So we have to use the same naming scheme.

I fully understand the inconvenience and is open to better solutions to the
versioning problem.

By the way, the minor version number is changed when the only action to take
is to recompile the application and all its stubs. The major number is
changed when there are some incompatible changes to the application level
API that requires some changes to the source code.


Regards,
Sai-Lai


---
Sai-Lai Lo                                   S.Lo@uk.research.att.com
AT&T Laboratories Cambridge           WWW:   http://www.uk.research.att.com
24a Trumpington Street                Tel:   +44 1223 343000
Cambridge CB2 1QA                     Fax:   +44 1223 313542
ENGLAND