[omniORB] Some problems by compiling 3.0.5 on Mac OS X

Markus Hillebrand ein.wuschel@nexgo.de
Sat Jun 15 12:21:01 2002


  Hi all!

By compiling the 3.0.5 source under
Mac OS X (10.1.5) I had several problems:

omniInternal.cc:123: `_OMNIORB_HOST_BYTE_ORDER_' was not declared in this 
scope

I think the problem is in CORBA_sysdep.h:

around line 518:
    #elif defined(__darwin__)
    # define _HAS_SIGNAL 1
    ...
and later

    #elif defined(__powerpc__)
    # define _OMNIORB_HOST_BYTE_ORDER_ 0

but with #elif we choose one or the other.
And remember darwin can also be built an x86 systems ...

For my Mac OS X = powerpc-darwin I did:
    #elif defined(__darwin__)
    # define _HAS_SIGNAL 1
    # define _OMNIORB_HOST_BYTE_ORDER_ 0

but I think this should be considered as a temporary hack
to get it compiled.

--- Next one (omniPy1.5):
I had some problems by compiling omniOrbPy-1.5 too:
in modules/dir.mk I had to replace some spaces into
tabs, because I got some
    dir.mk: <line> *** missing separator.  Stop.
errors from make.

--- Next one (omniPy1.5):
Next error was on linking stage:
    /usr/bin/ld: -undefined error must be used when -twolevel_namespace is 
in effect
    make[1]: *** [_omnipymodule.0.5.so] Error 1

Currently I don't know much about apple specific linkage, so I took
the same parameters as used for omniORB core:

(solution) around line 506 for modules/dir.mk:
$(lib): $(OBJS)
    (set -x; \
          $(RM) $@; \
          $(CXX) -dynamiclib -flat_namespace -undefined suppress -o $@ 
$(IMPORT_LIBRARY_FLAGS) \
          $(filter-out $(LibSuffixPattern),$^) $(OMNIORB_LIB_NODYN) \
        )

(original source) instead of:
$(lib): $(OBJS)
    (set -x; \
         $(RM) $@; \
          $(CXX) -bundle -undefined suppress -o $@ $(IMPORT_LIBRARY_FLAGS) 
\
          $(filter-out $(LibSuffixPattern),$^) $(OMNIORB_LIB_NODYN) \
        )

---
So far so good, with that I can compile it and it seems
that omniNames and nameclt are running. I'll see
in the next days if it runs fine with my sources ;)
---

Thanks by the way for this great piece of software.
Keep on going and have a nice weekend out there.

	With best regards
	M. Hillebrand