[omniORB] omniORB 3.0.1 is released.

Mark Borges mdb@jimi.nwest.attws.com
21 Aug 2000 11:46:16 -0700


--=-=-=

>> On Fri, 18 Aug 2000 17:44:03 +0100,
>> Sai-Lai Lo(SL) wrote:

SL> 2. A stub library of COS (common object services) IDLs is added. This is in
SL>    preparation for a soon-to-be released COS service.

Trying to build omniORB-3.0.1 under Solaris-2.6/gcc-2.95.2, I'm
encountering a slew of error messages at the linking stage for
libCOS3.so.0.1, typified by

==============================
+ g++ -shared -Wl,-h,libCOS3.so.0 -o shared/libCOS3.so.0.1 -L../../../lib/sun4_sosV_5.6 shared/TimeBaseSK.o shared/CosTimeSK.o shared/CosEventCommSK.o shared/CosEventChannelAdminSK.o shared/CosTypedEventCommSK.o shared/CosTypedEventChannelAdminSK.o shared/CosTimerEventSK.o shared/CosNotificationSK.o shared/CosNotifyCommSK.o shared/CosNotifyFilterSK.o shared/CosNotifyChannelAdminSK.o shared/CosTypedNotifyCommSK.o shared/CosTypedNotifyChannelAdminSK.o shared/AttNotifyChannelAdminSK.o shared/CosLifeCycleSK.o -lomniORB3 -lomniDynamic3 -ltcpwrapGK -lomnithread -lpthread -lposix4 -lsocket -lnsl 
Text relocation remains                 	referenced
    against symbol		    offset	in file
omni_thread_init                    0x34      	../../../lib/sun4_sosV_5.6/libomniDynamic3.a(constants.o)
omni_thread_init                    0x38      	../../../lib/sun4_sosV_5.6/libomniDynamic3.a(constants.o)

[elided]

ld: fatal: relocations remain against allocatable but non-writable sections
collect2: ld returned 1 exit status
make[2]: *** [shared/libCOS3.so.0.1] Error 1
make[1]: *** [export] Error 2
make: *** [export] Error 2
==============================

To my (untrained) eye, this looks suspiciously like a PIC issue (note
that a libomniDynamic3.so library was *not* built, nor was -fPIC
passed as a command line switch when building the modules for
libomniDynamic3.a).

Is there some configuration step I've missed? If it helps any, I've
attached a unified diff against the distributed
mk/platforms/sun4_sosV_5.6.mk that I use as a patch for this machine.

I had no problem building omniORB-3.0.0 using this OS/compiler
combination in the past.

-- 
 -mb-

--=-=-=
Content-Disposition: attachment; filename=patch.sun4_sosV_5.6.mk
Content-Description: sun4_sosV_5.6.mk patch

--- sun4_sosV_5.6.mk.dist	Thu Aug 17 10:36:29 2000
+++ sun4_sosV_5.6.mk	Thu Aug 17 10:40:53 2000
@@ -17,6 +17,7 @@
 
 #PYTHON = $(ABSTOP)/$(BINDIR)/omnipython
 #PYTHON = /usr/local/bin/python
+PYTHON = /opt/local/bin/python
 
 
 #
@@ -47,12 +48,12 @@
 #
 # To use SunPro compilers, uncomment the following lines:
 #
-CXX = CC
-CXXMAKEDEPEND += -D__SUNPRO_CC -D__cplusplus
-CXXDEBUGFLAGS = -O2
-CXXMTFLAG     = -mt
-CXXLINK		= $(CXX)
-CXXLINKOPTIONS  = $(CXXDEBUGFLAGS) $(CXXOPTIONS)
+#CXX = CC
+#CXXMAKEDEPEND += -D__SUNPRO_CC -D__cplusplus
+#CXXDEBUGFLAGS = -O2
+#CXXMTFLAG     = -mt
+#CXXLINK		= $(CXX)
+#CXXLINKOPTIONS  = $(CXXDEBUGFLAGS) $(CXXOPTIONS)
 
 # CXXLINKOPTIONS += $(patsubst %,-R %,$(IMPORT_LIBRARY_DIRS))
 # Note: the -R linker option in CXXLINKOPTIONS instruct the Sun linker to
@@ -67,20 +68,21 @@
 #
 # To use gcc, uncomment the following lines:
 #
-#CPP = gcc
+CPP = gcc
 #
-#CXX = g++
-#CXXMAKEDEPEND += -D__cplusplus -D__GNUG__ -D__GNUC__
-#CXXDEBUGFLAGS = 
-#CXXOPTIONS    =  -fhandle-exceptions -Wall -Wno-unused
-#CXXMTFLAG     =
+CXX = g++
+CXXMAKEDEPEND += -D__cplusplus -D__GNUG__ -D__GNUC__
+CXXDEBUGFLAGS = 
+CXXOPTIONS    =  -fexceptions -Wall -Wno-unused
+CXXMTFLAG     =
 #
-#CXXLINK		= $(CXX)
-#CXXLINKOPTIONS  = $(CXXDEBUGFLAGS) $(CXXOPTIONS)
+CXXLINK		= $(CXX)
+CXXLINKOPTIONS  = $(CXXDEBUGFLAGS) $(CXXOPTIONS)
 #
 # CXXLINKOPTIONS += $(patsubst %,-R %,$(IMPORT_LIBRARY_DIRS))
 # Note: the -R linker option in CXXLINKOPTIONS instruct the Sun linker to
 # record the pathname of the shared libraries in the executable.
+CXXLINKOPTIONS += $(patsubst %,-R %,/opt/omniORB/lib:/appl/omniORB/lib)
 
 CC                = gcc
 CMAKEDEPEND       += -D__GNUC__

--=-=-=--