[omniORB] Unresolved references to VTT and vtable
W T Meyer
meyer at iastate.edu
Mon May 23 11:21:48 BST 2005
I'm a newbie to omniOrb and have just installed it on an Intel-based
machine running Red Hat Linux 7.3. The eg1 and eg2 examples in the echo
directory compile, build, and run just fine.
I've tried to build my own test application based on eg1 (for now I'm
keeping it simple). It compiles with no errors and almost links OK - the
only errors are missing references to VTT and vtable for my class VXI_i (my
equivalent to Echo_i in eg1). Code snippets are given below.
How do I resolve these references?
Thanks in advance for your help.
Tom Meyer
Here is the code for VXI_i:
class VXI_i : public POA_VXI,
public PortableServer::RefCountServantBase {
public:
inline VXI_i() {}
virtual ~VXI_i() {}
virtual short InitVXIlibrary();
virtual short CloseVXIlibrary();
virtual short VXIin(unsigned short accparms, unsigned long addr,
unsigned short width, unsigned long& value);
virtual short VXIout(unsigned short accparms, unsigned long addr,
unsigned short width, unsigned long value);
virtual short VXImove(unsigned short sparms, unsigned long saddr,
unsigned short dparms, unsigned long daddr,
unsigned long length, unsigned short width);
};
/* The method implementations follow this code, I'm omitting them for
brevity */
Here is the Makefile I built based on the output from gmake building eg1:
CINCLUDES = -I. -I$(OMNIORB_TOP)/stub -I$(OMNIORB_TOP)/build/include
-I$(OMNIORB_TOP)/include -I$(DAQ_INCL_DIR)
CDEFINES = -D__OMNIORB4__ -D_REENTRANT -D__OSVERSION__=2 -D__linux__ -D__x86__
CFLAGS = -g -Wall -Wno-unused -fexceptions
OMNILIBS = $(OMNIORB_TOP)/build/lib/libomniORB4.so.0
LDPATH = -L$(OMNIORB_TOP)/lib -L$(OMNIORB_TOP)/build/lib -L$(DAQ_LIB_DIR)
LDSLIBS = -lomniORB4 -lomnithread -lpthread -lcmem_rcc -lrcc_error -lvme_rcc
#LDCLIBS = -l
clients: CoviTest1
CoviSK.cc: Covi.idl
omniidl -bcxx Covi.idl
CoviSK.o: CoviSK.cc
g++ -c $(CFLAGS) $(CDEFINES) $(CINCLUDES) -o CoviSK.o CoviSK.cc
CoviTest1.o: CoviTest1.cc CoviSK.cc
g++ -c $(CFLAGS) $(CDEFINES) $(CINCLUDES) -o CoviTest1.o CoviTest1.cc
CoviTest1: CoviTest1.o CoviSK.o
g++ -o CoviTest1 $(CFLAGS) $(LDPATH) CoviTest1.o CoviSK.o -lm $(LDSLIBS)
$(OMNILIBS)
.PHONY : clean
clean:
-rm *.o *.so *.a *~ core
More information about the omniORB-list
mailing list