[omniORB] omni::empty_string
Smith, Wayne
wsmith2@titan.com
Mon Nov 11 15:22:00 2002
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_001_01C28996.00313600
Content-Type: text/plain;
charset="iso-8859-1"
I'm trying this support group one more time before moving on to another ORB
if nobody can help me.
Does anyone have a clue about this?
-----Original Message-----
From: Smith, Wayne
Sent: Friday, November 08, 2002 9:53 AM
To: 'bjensen@fastmail.fm'
Cc: 'omniorb-list@omniorb-support.com'
Subject: RE: [omniORB] omni::empty_string
I've tried switching the libs in my Makefile to no avail. I get the
following error:
Building digio
Undefined first referenced
symbol in file
omni::empty_string
[...]/sharedServices/lib/libcfg.a(ConfigManager.o)
I have LIBRARIES = $(LIBS) $(MYLIBS) where $(LIBS) contain omni libs
and $(MYLIBS) contain my libraries I build which contains libcfg.a. omni is
building
omni::empty_string into my libraries. Do you know which library defines
omni::empty_string? Here is the Makefile:
### Compiler flags for c++
CCDEFINES = -DOMNI -D__sparc__ -D__sunos__ -D__OSVERSION__=5 \
-D__OMNIORB3__ -D__STL_NO_NAMESPACES -DSMALL_MEMORY
CCINCLUDES = -I$(OMNI)/include \
-I$(OMNI)/include/omniORB3 \
-I$(MYSRC)/sharedServices/idl \
-I/usr/openwin/share/include \
-I/usr/dt/share/include
CCOPTIONS = -fhandle-exceptions -Wall -Wno-unused
### idl
ORBCC = $(OMNI)/bin/omniidl
IDLFLAGS = -bcxx -Wba -WbBOA
### Link flags
LDOPTIONS =
### CORBA librarys
LIBCORBA = -lomniEvents -lomniORB3 \
-lomniDynamic3 -lomnithread -lomniGK_stub
### All required libraries
LIBPATH = -L$(OMNI)/lib
STDCC_LIBS = -lsocket -lnsl -ldl -lposix4 -lpthread
LIBS = $(LIBPATH) $(LIBCORBA) $(STDCC_LIBS)
# compiler flags for c (not really used)
CDEFINES = $(CCDEFINES)
CINCLUDES = $(CCINCLUDES)
COPTIONS = $(CCOPTIONS)
.SILENT:
CCC = g++
CC = gcc
AR = ar
AR_TMPL = ar
RANLIB = touch
COMMONFLAGS = -DSOLARIS -g -w -pipe -fpermissive -D__EXTENSIONS__ \
-I$(MYSRC)/sharedServices/include \
-D_REENTRANT -DGNU
CFLAGS = $(COMMONFLAGS) $(CINCLUDES) $(COPTIONS) $(CDEFINES) \
$(MYINCLUDES) $(MYCOPTIONS)
CCFLAGS = $(COMMONFLAGS) $(CCINCLUDES) $(CCOPTIONS) $(CCDEFINES) \
$(MYINCLUDES) $(MYCCOPTIONS)
LDFLAGS = -g -mt $(LDOPTIONS) -L$(LIBDIR)
ARFLAGS = -r
AR_TMPL_FLAGS = -r
LIBDIR = $(MYSRC)/sharedServices/lib
LIBLOC = ../lib
SVDIR = $(SV_HOME)/bin
XLIBS = $(LIBS) -lXm -lXext -lXt -lX11
GLIBS = -lMesaGL -lMesaGLU -lXext
OBJS = $(IDL:.idl=SK.o) $(IDL:.idl=DynSK.o) $(CSRCS:.c=.o) $(CCSRCS:.C=.o)
BYPRODUCTS = $(OBJS) \
$(IDL:.idl=SK.cc) \
$(IDL:.idl=DynSK.cc) \
$(IDL:.idl=.hh) \
$(IDL:.idl=_s.hh) \
$(IDL:.idl=_c.hh)
APP = myio
TARGETS = $(SVDIR)/$(APP)
CCSRCS = Config.C IOCtrl.C Main.C SndAlert.C
MYLIBS = $(LIBDIR)/libIpc.a $(LIBDIR)/libsfevent.a \
$(LIBDIR)/libcfg.a $(LIBDIR)/libutl.a \
$(LIBDIR)/libcorbaObj.a $(LIBDIR)/libdstr.a
MYINCLUDES = -I../drivers/include
LIBRARIES = $(LIBS) $(MYLIBS)
$(SVDIR)/$(APP): $(OBJS) $(MYLIBS)
echo Building $(APP)
$(CCC) $(LDFLAGS) -o $(FSVDIR)/$(APP) $(OBJS) $(LIBRARIES)
dioCtl: dioCtl.o
$(CCC) $(LDFLAGS) -o dioCtl dioCtl.o $(LIBRARIES)
.SUFFIXES: .C .o .h .cc .idl
.idl.cc:
echo Translating: $<
$(ORBCC) $(IDLFLAGS) $<
cp $*.hh $*_s.hh
cp $*.hh $*_c.hh
.C.o:
echo Compiling: $<
$(CCC) $(CCFLAGS) -c -o $@ $<
.cc.o:
echo Compiling: $<
$(CCC) $(CCFLAGS) -c -o $@ $<
.c.o:
echo Compiling: $<
$(CC) $(CFLAGS) -c -o $@ $<
all: $(TARGETS)
clean:
-rm -f core $(BYPRODUCTS)
-rm -rf Templates.DB
spotless: clean
-rm -f $(TARGETS)
-rm -f Depends
touch Depends
depend:
$(CCC) -MM $(CCFLAGS) $(CSRCS) $(CCSRCS) >Depends
############################################################################
###
include Depends
############################################################################
###
-----Original Message-----
From: bjorn rohde jensen [ mailto:bjensen@fastmail.fm
<mailto:bjensen@fastmail.fm> ]
Sent: Thursday, November 07, 2002 2:58 PM
To: Smith, Wayne
Cc: 'omniorb-list@omniorb-support.com'
Subject: Re: [omniORB] omni::empty_string
Hi Wayne,
I think, omni::empty_string is a helper thing for
the string mapping, so it is pretty odd, that you
get unresolved references to it. The only (far fetched)
idea, i can think of, is problems with your link order,
ie putting libs before object files depending on them
during link phase.
Yours sincerely,
Bjorn
------_=_NextPart_001_01C28996.00313600
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1">
<TITLE>RE: [omniORB] omni::empty_string</TITLE>
<META content=3D"MSHTML 5.00.2919.6307" name=3DGENERATOR></HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D100281818-11112002>I'm =
trying this=20
support group one more time before moving on to another ORB if nobody =
can help=20
me. </SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN class=3D100281818-11112002>Does =
anyone have a=20
clue about this?</SPAN></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><SPAN=20
class=3D100281818-11112002></SPAN></FONT> </DIV>
<DIV align=3Dleft class=3DOutlookMessageHeader dir=3Dltr><FONT =
face=3DTahoma=20
size=3D2>-----Original Message-----<BR><B>From:</B> Smith, Wayne =
<BR><B>Sent:</B>=20
Friday, November 08, 2002 9:53 AM<BR><B>To:</B>=20
'bjensen@fastmail.fm'<BR><B>Cc:</B>=20
'omniorb-list@omniorb-support.com'<BR><B>Subject:</B> RE: [omniORB]=20
omni::empty_string<BR><BR></FONT></DIV>
<P><FONT size=3D2>I've tried switching the libs in<SPAN=20
class=3D100281818-11112002><FONT face=3DArial> </FONT></SPAN>my =
Makefile to no=20
avail. I get the following error:</FONT> </P>
<P><FONT size=3D2>Building digio</FONT> <BR><FONT=20
size=3D2>Undefined =
=
=20
first referenced</FONT> <BR><FONT=20
size=3D2> symbol &nb=
sp; &nb=
sp; =20
in file</FONT> <BR><FONT=20
size=3D2>omni::empty_string &nb=
sp; =20
[...]/sharedServices/lib/libcfg.a(ConfigManager.o)</FONT> </P>
<P><FONT size=3D2>I have LIBRARIES =3D $(LIBS) $(MYLIBS) where $(LIBS) =
contain omni=20
libs</FONT> <BR><FONT size=3D2>and $(MYLIBS) contain my libraries I =
build which=20
contains libcfg.a. omni is building</FONT> <BR><FONT =
size=3D2>omni::empty_string=20
into my libraries. Do you know which library defines </FONT><BR><FONT=20
size=3D2>omni::empty_string? Here is the Makefile:</FONT> </P>
<P><FONT size=3D2>### Compiler flags for c++</FONT> </P><BR>
<P><FONT size=3D2>CCDEFINES =3D -DOMNI -D__sparc__ -D__sunos__=20
-D__OSVERSION__=3D5 \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
-D__OMNIORB3__ -D__STL_NO_NAMESPACES -DSMALL_MEMORY</FONT> </P>
<P><FONT size=3D2>CCINCLUDES =3D -I$(OMNI)/include \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
-I$(OMNI)/include/omniORB3 \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
-I$(MYSRC)/sharedServices/idl \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
-I/usr/openwin/share/include \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
-I/usr/dt/share/include</FONT> </P>
<P><FONT size=3D2>CCOPTIONS =3D -fhandle-exceptions -Wall =
-Wno-unused</FONT>=20
</P>
<P><FONT size=3D2>### idl</FONT> <BR><FONT=20
size=3D2>ORBCC =3D =
$(OMNI)/bin/omniidl</FONT>=20
<BR><FONT size=3D2>IDLFLAGS =3D -bcxx -Wba =
-WbBOA</FONT> </P>
<P><FONT size=3D2>### Link flags</FONT> <BR><FONT size=3D2>LDOPTIONS =
=3D</FONT> </P>
<P><FONT size=3D2>### CORBA librarys</FONT> <BR><FONT size=3D2>LIBCORBA =
=3D=20
-lomniEvents -lomniORB3 \</FONT> <BR><FONT=20
size=3D2> =20
-lomniDynamic3 -lomnithread -lomniGK_stub</FONT> </P>
<P><FONT size=3D2>### All required libraries</FONT> <BR><FONT=20
size=3D2>LIBPATH =3D -L$(OMNI)/lib</FONT> <BR><FONT=20
size=3D2>STDCC_LIBS =3D -lsocket -lnsl -ldl -lposix4 -lpthread</FONT> =
<BR><FONT=20
size=3D2>LIBS =3D $(LIBPATH) =
$(LIBCORBA)=20
$(STDCC_LIBS)</FONT> </P>
<P><FONT size=3D2># compiler flags for c (not really used)</FONT> =
<BR><FONT=20
size=3D2>CDEFINES =3D $(CCDEFINES)</FONT> <BR><FONT =
size=3D2>CINCLUDES =3D=20
$(CCINCLUDES)</FONT> <BR><FONT size=3D2>COPTIONS =3D =
$(CCOPTIONS)</FONT>=20
</P><BR>
<P><FONT size=3D2>.SILENT:</FONT> </P>
<P><FONT size=3D2>CCC =3D g++</FONT> <BR><FONT size=3D2>CC =3D =
gcc</FONT>=20
<BR><FONT size=3D2>AR =3D ar</FONT> <BR><FONT size=3D2>AR_TMPL =
=3D ar</FONT>=20
<BR><FONT size=3D2>RANLIB =3D touch</FONT> </P>
<P><FONT size=3D2>COMMONFLAGS =3D -DSOLARIS -g -w -pipe -fpermissive=20
-D__EXTENSIONS__ \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
-I$(MYSRC)/sharedServices/include \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
-D_REENTRANT -DGNU </FONT></P>
<P><FONT size=3D2>CFLAGS =3D $(COMMONFLAGS) $(CINCLUDES) =
$(COPTIONS)=20
$(CDEFINES) \</FONT> <BR><FONT=20
size=3D2> =
$(MYINCLUDES)=20
$(MYCOPTIONS)</FONT> <BR><FONT size=3D2>CCFLAGS =3D $(COMMONFLAGS) =
$(CCINCLUDES)=20
$(CCOPTIONS) $(CCDEFINES) \</FONT> <BR><FONT=20
size=3D2> =
$(MYINCLUDES)=20
$(MYCCOPTIONS)</FONT> </P>
<P><FONT size=3D2>LDFLAGS =3D -g -mt $(LDOPTIONS) =
-L$(LIBDIR)</FONT> <BR><FONT=20
size=3D2>ARFLAGS =3D -r</FONT> <BR><FONT =
size=3D2>AR_TMPL_FLAGS =3D=20
-r</FONT> </P>
<P><FONT size=3D2>LIBDIR =3D =
$(MYSRC)/sharedServices/lib</FONT>=20
<BR><FONT size=3D2>LIBLOC =3D ../lib</FONT> <BR><FONT =
size=3D2>SVDIR =3D=20
$(SV_HOME)/bin</FONT> </P>
<P><FONT size=3D2>XLIBS =3D $(LIBS) -lXm -lXext -lXt -lX11</FONT> =
<BR><FONT=20
size=3D2>GLIBS =3D -lMesaGL -lMesaGLU -lXext</FONT> <BR><FONT=20
size=3D2>OBJS =3D $(IDL:.idl=3DSK.o) $(IDL:.idl=3DDynSK.o) =
$(CSRCS:.c=3D.o)=20
$(CCSRCS:.C=3D.o)</FONT> </P>
<P><FONT size=3D2>BYPRODUCTS =3D $(OBJS) \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
$(IDL:.idl=3DSK.cc) \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
$(IDL:.idl=3DDynSK.cc) \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
$(IDL:.idl=3D.hh) \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
$(IDL:.idl=3D_s.hh) \</FONT> <BR><FONT=20
size=3D2> &nb=
sp; =20
$(IDL:.idl=3D_c.hh)</FONT> </P><BR>
<P><FONT size=3D2>APP =3D myio</FONT> <BR><FONT size=3D2>TARGETS =3D=20
$(SVDIR)/$(APP)</FONT> </P>
<P><FONT size=3D2>CCSRCS =3D Config.C IOCtrl.C Main.C SndAlert.C =
</FONT><BR><FONT=20
size=3D2> </FONT></P>
<P><FONT size=3D2>MYLIBS =3D =
$(LIBDIR)/libIpc.a =20
$(LIBDIR)/libsfevent.a \</FONT> <BR><FONT=20
size=3D2> =20
$(LIBDIR)/libcfg.a =20
$(LIBDIR)/libutl.a \</FONT> <BR><FONT=20
size=3D2> =20
$(LIBDIR)/libcorbaObj.a =
$(LIBDIR)/libdstr.a =20
</FONT><BR><FONT =
size=3D2> =20
</FONT></P>
<P><FONT size=3D2>MYINCLUDES =3D -I../drivers/include</FONT> </P>
<P><FONT size=3D2>LIBRARIES =3D $(LIBS) $(MYLIBS)</FONT> </P>
<P><FONT size=3D2>$(SVDIR)/$(APP): $(OBJS) $(MYLIBS)</FONT> <BR><FONT=20
size=3D2> echo Building =
$(APP)</FONT>=20
<BR><FONT size=3D2> $(CCC) =
$(LDFLAGS) -o=20
$(FSVDIR)/$(APP) $(OBJS) $(LIBRARIES)</FONT> </P>
<P><FONT size=3D2>dioCtl: dioCtl.o</FONT> <BR><FONT=20
size=3D2> $(CCC) $(LDFLAGS) =
-o dioCtl=20
dioCtl.o $(LIBRARIES)</FONT> </P><BR>
<P><FONT size=3D2>.SUFFIXES: .C .o .h .cc .idl</FONT> </P>
<P><FONT size=3D2>.idl.cc:</FONT> <BR><FONT=20
size=3D2> echo Translating: =
$<</FONT>=20
<BR><FONT size=3D2> $(ORBCC) =
$(IDLFLAGS)=20
$<</FONT> <BR><FONT =
size=3D2> cp=20
$*.hh $*_s.hh</FONT> <BR><FONT =
size=3D2> =20
cp $*.hh $*_c.hh</FONT> </P>
<P><FONT size=3D2>.C.o:</FONT> <BR><FONT=20
size=3D2> echo Compiling: =
$<</FONT>=20
<BR><FONT size=3D2> $(CCC) =
$(CCFLAGS) -c=20
-o $@ $<</FONT> </P>
<P><FONT size=3D2>.cc.o:</FONT> <BR><FONT=20
size=3D2> echo Compiling: =
$<</FONT>=20
<BR><FONT size=3D2> $(CCC) =
$(CCFLAGS) -c=20
-o $@ $<</FONT> </P>
<P><FONT size=3D2>.c.o:</FONT> <BR><FONT=20
size=3D2> echo Compiling: =
$<</FONT>=20
<BR><FONT size=3D2> $(CC) =
$(CFLAGS) -c=20
-o $@ $<</FONT> </P>
<P><FONT size=3D2>all: $(TARGETS)</FONT> </P>
<P><FONT size=3D2>clean:</FONT> <BR><FONT=20
size=3D2> -rm -f core=20
$(BYPRODUCTS)</FONT> <BR><FONT =
size=3D2> =20
-rm -rf Templates.DB</FONT> </P>
<P><FONT size=3D2>spotless: clean</FONT> <BR><FONT=20
size=3D2> -rm -f =
$(TARGETS)</FONT>=20
<BR><FONT size=3D2> -rm -f=20
Depends</FONT> <BR><FONT =
size=3D2> touch=20
Depends</FONT> </P>
<P><FONT size=3D2>depend:</FONT> <BR><FONT=20
size=3D2> $(CCC) -MM =
$(CCFLAGS) $(CSRCS)=20
$(CCSRCS) >Depends</FONT> </P>
<P><FONT=20
size=3D2>###############################################################=
################</FONT>=20
<BR><FONT size=3D2>include Depends</FONT> <BR><FONT=20
size=3D2>###############################################################=
################</FONT>=20
</P><BR><BR><BR>
<P><FONT size=3D2>-----Original Message-----</FONT> <BR><FONT =
size=3D2>From: bjorn=20
rohde jensen [<A=20
href=3D"mailto:bjensen@fastmail.fm">mailto:bjensen@fastmail.fm</A>]</FON=
T>=20
<BR><FONT size=3D2>Sent: Thursday, November 07, 2002 2:58 PM</FONT> =
<BR><FONT=20
size=3D2>To: Smith, Wayne</FONT> <BR><FONT size=3D2>Cc:=20
'omniorb-list@omniorb-support.com'</FONT> <BR><FONT size=3D2>Subject: =
Re:=20
[omniORB] omni::empty_string</FONT> </P><BR>
<P><FONT size=3D2>Hi Wayne,</FONT> </P>
<P><FONT size=3D2> I think, omni::empty_string is a helper thing =
for</FONT>=20
<BR><FONT size=3D2>the string mapping, so it is pretty odd, that =
you</FONT>=20
<BR><FONT size=3D2>get unresolved references to it. The only (far =
fetched)</FONT>=20
<BR><FONT size=3D2>idea, i can think of, is problems with your link =
order,</FONT>=20
<BR><FONT size=3D2>ie putting libs before object files depending on =
them</FONT>=20
<BR><FONT size=3D2>during link phase.</FONT> </P>
<P><FONT size=3D2>Yours sincerely,</FONT> </P>
<P><FONT size=3D2>Bjorn</FONT> </P></BODY></HTML>
------_=_NextPart_001_01C28996.00313600--