[omniORB] solution for problems compiling projects using msdevstudio 6

David Riddoch djr@uk.research.att.com
Tue, 7 Dec 1999 14:52:54 +0000 (GMT)


Hi,

The situation is that applications that don't use TypeCode, Any, DynAny
etc should be able to link only with omniORB280_rt(d).dll.  It turns out
that MSVC does a poor job of analysing dependancies, and so references
code in omniDynamic280_rt(d).dll, even though it is not reachable.  This
is a problem with MSVC -- all other platforms/compilers we have tested do
not have this problem.

So this means that pretty much all applications have to be linked against
both the omniORB and omniDynamic libraries.  When using dynamically linked
libraries this oughtn't be too much of an overhead, just a pain.

If anyone can tell me specifically how to prevent MSVC from generating
these unnecassary references, and if it is very little work to implement,
and it has no performance penalty for other platforms, *then* I might be
able to solve this problem.

Until then...if you really need to avoid linking with omniDynamic (say if
you are using static libraries) then you could hack the headers to remove
all the dynamic types.  More hassle than its worth if you ask me.

Cheers,
David