[omniORB] Re: Unix transport with static libraries error [patch]

Arne Pajunen apajunen.openttcn at gmail.com
Mon Jan 25 14:15:14 GMT 2010


Hi,

I just found the patch most likely breaks windows builds, since they 
don't include the Unix transport (obviously). I corrected the patch by 
adding a ifdef around the OMNI_FORCE_LINK lines. Sorry about the confusion.

Best regards,

Arne Pajunen

Software Engineer
OpenTTCN Oy

On 1/25/2010 1:14 PM, Arne Pajunen wrote:
> 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 13:19:43.000000000 +0200
@@ -108,6 +108,9 @@
 
 OMNI_FORCE_LINK(tcpTransportImpl);
 
+#if defined(UnixArchitecture)
+OMNI_FORCE_LINK(unixTransportImpl);
+#endif
 
 OMNI_NAMESPACE_BEGIN(omni)
 


More information about the omniORB-list mailing list