[omniORB-dev] Building for Mac OS X Lion

Thomas Lockhart lockhart at fourpalms.org
Sat Feb 11 19:03:07 GMT 2012


I'm trying to get code running on Mac OS X including omniORB and omniORBpy.

The current MacPorts ports are for 4.1.4 and 3.4, respectively, and 
fails to build on my recent MacBook with XCode-4.2.1. I've updated my 
copy of the port of omniORB to 4.1.6 and after setting DYLD_LIBRARY_PATH 
in the port script so the linker would find libraries in the build area 
I'm getting the following error:

/Developer/usr/bin/clang++ -o catior -L/opt/local/lib -arch x86_64 -pipe 
-O2 -arch x86_64 -fno-common -bind_at_load -L../../../../lib 
-L../../../../lib catior.o -lomniORB4 -lomnithread
Undefined symbols for architecture x86_64:
   "operator<<=(unsigned int&, cdrStream&)", referenced from:
       
_CORBA_Unbounded_Sequence<IOP::TaggedProfile>::operator<<=(cdrStream&) 
in catior.o

Which I see is indeed undefined in both catior.o and in 
libomniORB4.dylib (along with undefined operators for a few other int 
types). I'm guessing it is an implicit template issue but...

... when I look at libomniORB4.so on my Linux box I don't see any 
definition for operator<<=() with two arguments except for a strong 
symbol with "long double&" as the first argument. None with "unsigned int&".

Does this ring a bell with anyone? Any hints on where to look? Has 
anyone had success building with clang++ rather than gcc?

TIA

                - Tom



More information about the omniORB-dev mailing list