[omniORB] Alpha/Digital UX link errors linking example 1

agonne - Andrew Gonnet AGONNE@acxiom.co.uk
Wed, 2 Jun 1999 15:08:51 +0100


Hi Sai-Lai,

Thanks very much for your reply. I checked the version of cxx that I 
was using. There is only one copy installed, it is 6.1-029 and it's 
the one being used. I also checked my LD_LIBRARY_PATH and found that I 
was using the .so files from omniORB 2.6.1 not 2.7.1. I corrected 
LD_LIBRARY_PATH, deleted everything,  untared the distribution from 
scratch and tried again using the make file in "echo" and typing "make 
eg1". I now get three unresolved references: 
"CORBA::__vtbl_5CORBA15SystemException", 
"CORBA::__vtbl_5CORBA9NO_MEMORY" and 
"CORBA::__vtbl_5CORBA13BAD_OPERATION". These are all in the echoSK.o 
object that I'm creating from the output of "omniidl2". Here is a 
listing of the make output:

-----------------------------------------------------------
/usr/users/develop/agonne/WareHouse/omniORB/omniORB_2.7.1/src/examples/  
echo >make eg1
mkdirhier ../../../stub
rm -f ../../../stub/echo.idl
cp echo.idl ../../../stub
chmod +w ../../../stub/echo.idl
( cd ../../../stub; \
  ../bin/alpha_osf1_4.0/omniidl2 -a echo.idl; \
)
../../../bin/alpha_osf1_4.0/omkdepend -D__DECCXX -D__cplusplus 
-D__OMNIORB2__ -I../../../stub -D_REENTRANT -pthread -I. 
-I../../../include -D__alpha__ -D__osf1__ -D__OSVERSION__=4 eg3_clt.cc 
eg3_impl.cc eg2_clt.cc eg2_impl.cc eg1.cc greeting.cc
/usr/bin/cxx -c -O -ptr ../../../cxx_respository -D__OMNIORB2__ 
-I../../../stub -D_REENTRANT -pthread -I.  -I../../../include 
-D__alpha__ -D__osf1__ -D__OSVERSION__=4 -o eg1.o eg1.cc
/usr/bin/cxx -c -O -ptr ../../../cxx_respository -D__OMNIORB2__ 
-I../../../stub -D_REENTRANT -pthread -I.  -I../../../include 
-D__alpha__ -D__osf1__ -D__OSVERSION__=4 -o ../../../stub/echoSK.o 
../../../stub/echoSK.cc
/usr/bin/cxx -c -O -ptr ../../../cxx_respository -D__OMNIORB2__ 
-I../../../stub -D_REENTRANT -pthread -I.  -I../../../include 
-D__alpha__ -D__osf1__ -D__OSVERSION__=4 -o ../../../stub/echoDynSK.o 
../../../stub/echoDynSK.cc
+ rm -f eg1
+ /usr/bin/cxx -o eg1 -O -ptr ../../../cxx_respository -call_shared 
-L../../../lib/alpha_osf1_4.0 eg1.o ../../../stub/echoSK.o 
../../../stub/echoDynSK.o -lomniORB2 -lomniDynamic2 -lomnithread 
-lpthread -lmach -lc_r -ltcpwrapGK -rpath ../../../lib/alpha_osf1_4.0 
ld:
Unresolved:


CORBA::__vtbl_5CORBA15SystemException  Make sure that the first 
noninlined virtual member function of 'CORBA::SystemException' is 
defined.

CORBA::__vtbl_5CORBA9NO_MEMORY  Make sure that the first noninlined 
virtual member function of 'CORBA::NO_MEMORY' is defined.

CORBA::__vtbl_5CORBA13BAD_OPERATION  Make sure that the first 
noninlined virtual member function of 'CORBA::BAD_OPERATION' is 
defined.


make: *** [eg1] Error 1
/usr/users/develop/agonne/WareHouse/omniORB/omniORB_2.7.1/src/examples/  
echo >/usr/bin/cxx -V
DIGITAL C++ V6.1-029 on DIGITAL UNIX V4.0 (Rev. 1091)
-----------------------------------------------------------------------  
----------




I've also put the whole set of source files onto a different Alpha 
machine which had cxx v6.0-021 on it still. I got an additional 
unresolved "CORBA::__vtbl_5CORBA9Exception", see below:



----------------------------------------------------------------------
  

$ make eg1
mkdirhier ../../../stub
rm -f ../../../stub/echo.idl
cp echo.idl ../../../stub
chmod +w ../../../stub/echo.idl
( cd ../../../stub; \
  ../bin/alpha_osf1_4.0/omniidl2 -a echo.idl; \
)
../../../bin/alpha_osf1_4.0/omkdepend -D__DECCXX -D__cplusplus 
-D__OMNIORB2__ -I../../../stub -D_REENTRANT -pthread -I. 
-I../../../include -D__alpha__ -D__osf1__ -D__OSVERSION__=4 eg3_clt.cc 
eg3_impl.cc eg2_clt.cc eg2_impl.cc eg1.cc greeting.cc
/usr/bin/cxx -c -O -ptr ../../../cxx_respository -D__OMNIORB2__ 
-I../../../stub -D_REENTRANT -pthread -I.  -I../../../include 
-D__alpha__ -D__osf1__ -D__OSVERSION__=4 -o eg1.o eg1.cc
/usr/bin/cxx -c -O -ptr ../../../cxx_respository -D__OMNIORB2__ 
-I../../../stub -D_REENTRANT -pthread -I.  -I../../../include 
-D__alpha__ -D__osf1__ -D__OSVERSION__=4 -o ../../../stub/echoSK.o 
../../../stub/echoSK.cc
/usr/bin/cxx -c -O -ptr ../../../cxx_respository -D__OMNIORB2__ 
-I../../../stub -D_REENTRANT -pthread -I.  -I../../../include 
-D__alpha__ -D__osf1__ -D__OSVERSION__=4 -o ../../../stub/echoDynSK.o 
../../../stub/echoDynSK.cc
+ rm -f eg1
+ /usr/bin/cxx -o eg1 -O -ptr ../../../cxx_respository -call_shared 
-L../../../lib/alpha_osf1_4.0 eg1.o ../../../stub/echoSK.o 
../../../stub/echoDynSK.o -lomniORB2 -lomniDynamic2 -lomnithread 
-lpthread -lmach -lc_r -ltcpwrapGK -rpath ../../../lib/alpha_osf1_4.0 
ld:
Unresolved:


CORBA::__vtbl_5CORBA9Exception

CORBA::__vtbl_5CORBA15SystemException

CORBA::__vtbl_5CORBA9NO_MEMORY

CORBA::__vtbl_5CORBA13BAD_OPERATION


make: *** [eg1] Error 1
$ cxx -V
DIGITAL C++ V6.0-021 on DIGITAL UNIX V4.0 (Rev. 1091)
-----------------------------------------------------------------------  
----------



Any suggestions, however unlikely, would be much appreciated.


Thanks again,

Andrew Gonnet.

----------
From:  Sai-Lai Lo [SMTP:S.Lo@uk.research.att.com]
Sent:  02 June 1999 10:18
To:  agonne - Andrew Gonnet
Subject:  Re: [omniORB] Alpha/Digital UX link errors linking example 
1

>>>>> agonne  writes:

> I'm getting unresolved errors for methods that are called in the
> object generated from the "echoSK.cc" using the supplied make file 
in
> the "echo" example directory. Using "nm" I can find these methods in 
> the "echoSK.o" object, but the version in the supplied object
> "libomniORB2.so" is in the format "__vtbl_Q15CORBA7UNKNOWN" etc - 
i.e
> there's an extra "Q1" in the middle.

> Has anybody come across this problem?

> I'm using Digital UX v4.0e, Digital cxx 6.0 (for compiling), gcc 
2.8.1
> (just for omniidl2, it complained when it wasn't there) and omniORB 
> 2.7.1.

It is strange because greping through nm echoSK.o I do not see any
reference to UNKNOWN.

Just a wild guess, are you sure you are compiling echoSK.o with the 
same
cxx 6.0 compiler?

Sai-Lai

--
Sai-Lai Lo                                   S.Lo@uk.research.att.com
AT&T Laboratories Cambridge           WWW: 
  http://www.uk.research.att.com
24a Trumpington Street                Tel:   +44 1223 343000
Cambridge CB2 1QA                     Fax:   +44 1223 313542
ENGLAND