[omniORB] Unix transport with static libraries error [patch]
Arne Pajunen
apajunen.openttcn at gmail.com
Mon Jan 25 13:14:15 GMT 2010
Hi,
I encountered a problem with using Unix Transport (-ORBendPoint
giop:unix: option) with omniORB 4.1.4 release version built as a static
library. It seems similar to a problem encountered by Roloff Craig in
2004 (quoted). I received the same error message when trying to start a
program with a unix transport endpoint:
Error: Unable to create an endpoint of this description: giop:unix:
I traced this down to a missing OMNI_FORCE_LINK in giopEndpoint.cc. I've
included a patch that adds the missing macro for unixTransportImpl. For
the Unix transport, this fixes the problem and the static library worked
fine.
I don't know if the other transports (ssl ?) need similar link lines,
but since I couldn't test them I didn't include them in the patch.
Best regards,
Arne Pajunen
Software Engineer
OpenTTCN Oy
> Posted by: Roloff, Craig A
> Tue Feb 3 09:52:23 GMT 2004
> Using version 4.0.3 on an HP-UX 11 machine, setting -ORBendPoint gioP:unix: works fine
> when linked using shared libraries. However, using static libraries produces the error message:
>
> Error: Unable to create an endpoint of this description: giop:unix:
>
> I suspect the linker is removing the "unused" reference to unixTransportImpl.
>
> How to proceed?
>
-------------- next part --------------
--- omniORB-4.1.4-clean/src/lib/omniORB/orbcore/giopEndpoint.cc 2010-01-25 11:48:32.000000000 +0200
+++ omniORB-4.1.4/src/lib/omniORB/orbcore/giopEndpoint.cc 2010-01-25 11:45:48.000000000 +0200
@@ -107,6 +107,7 @@
// Make sure built-in transports are always linked
OMNI_FORCE_LINK(tcpTransportImpl);
+OMNI_FORCE_LINK(unixTransportImpl);
OMNI_NAMESPACE_BEGIN(omni)
More information about the omniORB-list
mailing list