473,608 Members | 1,809 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

linking errors pointing to rogue wave & std classes during c++ application migration

6 New Member
Hi,

At present application was built on solaris 9 using sun studio 9 (Sun C++ 5.6) & rouguewave sorce pro 5. We are planning to port the same application onto SuSE Linux 9.5.0 using GCC 3.3.3 & RW source pro 9. My application heavily uses RW tools through wrapper classes on the top existing RW classes. RW libraries were built using gcc on linux platform and standalong RW examples are working fine. Since the application compilation is moving from Sun CC to GCC, we have taken care all my application template classes declaration & its implementation. Code compiles perfectly but throws lot of linking errors with undefined reference. Most of these errors are pointing inside RW template classes or std:: classes. I am not sure whether i am missing something w.r.t roguewave during my compilation (like some RW macros). Does anyone have idea whats the underlying problem please. Here I am attaching part of linking errors...

linking option :
----------------
g++ -D_RWCONFIG_15dn 2 -D_REENTRANT=1 -pthread -O3 -D__ORA_THREADS -fPIC -DRW_MULTI_THREA D -DCSTRING_MUTEX_ COUNT=61 -DUSE_SPROC=0 -DUSE_PRIVATE_HE APS=0 -Wno-deprecated -mcpu=x86-64 -L/usr/lib64 -L/lib64 -L/utils -L/main -L/usr/roguewave/RogueWave/SourcePro/native2/lib -I/usr/include -DSQLCA_NONE -DORACA_NONE -Dlint -fno-implicit-templates -D__DEBUG -DRW_CLASSIC_STR ING_CLASSES -I/usr/roguewave/RogueWave/SourcePro/native2 -I/usr/roguewave/RogueWave/SourcePro/native2/lib -I/drivermodule -I/include -I/utils -I/eventhandler -I/todmodule -I/orderexecution -I/servicemodule -I/wsdlpull/src -I/dboracle/orabase/product/db/10.2.0.3_64bit/precomp/public -I/dboracle/orabase/product/db/10.2.0.3_64bit/rdbms/demo -I/dboracle/orabase/product/db/10.2.0.3_64bit/rdbms/public -I/dboracle/orabase/product/db/10.2.0.3_64bit/xdk/include -I/dboracle/orabase/product/db/10.2.0.3_64bit/xdk/demo/cpp/new/ -o main.exe main.cc ../utils/libutils.a ../orderexecution/liborderexecuti on.a ../wsdlpull/src/xmlpull/libxmlpull.a ../wsdlpull/src/schemaparser/libschema.a ../wsdlpull/src/wsdlparser/libwsdl.a ../servicemodule/libservicemodul e.a ../eventhandlermod ule/libeventhandler .a ../todmodule/libtodmodule.a -ldrivermodule -L/dboracle/orabase/product/db/10.2.0.3_64bit/lib -lclient10 -lsql10 -lntcp10 -ln10 -lnl10 -lnldap10 -lnhost10 -lntns10 -lnoname10 -lnus10 -lntcps10 -lnro10 -lnsslb10 -lcommon10 -lgeneric10 -lmm -lnls10 -lcore10 -lclntsh -lxml10 -lunls10 -ldl `cat /dboracle/orabase/product/db/10.2.0.3_64bit/lib/sysliblist` -lm -lfactory1415dn2 -lfunctor2315dn2 -lfunctor_list23 15dn2 -lfunctor_map231 5dn2 -li18n1415dn2 -litc2315dn2 -lpointer2515dn2 -lserial2015dn2 -lstreams1315dn2 -lsync2415dn2 -lthread2415dn2 -lthrexcept2315d n2 -ltls71015dn2 -ltrace2315dn2 -ltypes1315dn2 -lxmlabstraction s1515dn2 -lxmlstreams1415 dn2 -lpthread -lc -lrt -lnsl


Linking errors:
===============
/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.3/../../../../x86_64-suse-linux/bin/ld: warning: libicudata.so.3 4, needed by /usr/roguewave/RogueWave/SourcePro/native2/lib/libi18n1415dn2. so, not found (try using -rpath or -rpath-link)
/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.3/../../../../x86_64-suse-linux/bin/ld: warning: libicui18n.so.3 4, needed by /usr/roguewave/RogueWave/SourcePro/native2/lib/libi18n1415dn2. so, not found (try using -rpath or -rpath-link)
/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.3/../../../../x86_64-suse-linux/bin/ld: warning: libicuuc.so.34, needed by /usr/roguewave/RogueWave/SourcePro/native2/lib/libi18n1415dn2. so, not found (try using -rpath or -rpath-link)
../utils/libutils.a(cexc eptions.o)(.tex t+0x926): In function `DEBUG_STD_FUNC (unsigned long, GenString const&, int, CObjList<GenStr ing>*)':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, GenString*>, std::_Select1st <std:air><GenSt ring* const, GenString*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, GenString*> > >::find(GenStri ng* const&)'
../utils/libutils.a(cexc eptions.o)(.tex t+0x9b2): In function `DEBUG_STD_FUNC (unsigned long, GenString const&, int, CObjList<GenStr ing>*)':
: undefined reference to `RWCTokenizer:: RWCTokenizer[in-charge](RWClassicCStri ng const&)'
../utils/libutils.a(gens tring.o)(.text+ 0x19e2): In function `GenString::Ext ractTagAndIndex (int const&, GenString&, GenString&, GenString&, bool&, int&, bool&, unsigned long&)':
: undefined reference to `RWCRegexp::RWC Regexp[in-charge](RWClassicCStri ng const&)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN16CMapSt ringToListI9Gen StringE6HelperE PKS0_RP8CObjLis tIS0_EPv+0x8): In function `CMapStringToLi st<GenString>:: Helper(GenStrin g const*, CObjList<GenStr ing>*&, void*)':
: undefined reference to `RW_PSeq<rw_sli st><GenString*, std::allocator> <GenString*> >, RWTPtrSlist<Gen String, std::allocator> <GenString*> >, GenString>::cle arAndDestroy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringEC2 Ev+0x5): In function `CObjList<GenSt ring>::CObjList[not-in-charge]()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::rw_slist[not-in-charge]()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringEC1 Ev+0x5): In function `CObjList<GenSt ring>::CObjList[in-charge]()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::rw_slist[not-in-charge]()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringED2 Ev+0x12): In function `CObjList<GenSt ring>::~CObjLis t [not-in-charge]()':
: undefined reference to `RW_PSeq<rw_sli st><GenString*, std::allocator> <GenString*> >, RWTPtrSlist<Gen String, std::allocator> <GenString*> >, GenString>::cle arAndDestroy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringED2 Ev+0x1a): In function `CObjList<GenSt ring>::~CObjLis t [not-in-charge]()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::~rw_slist [not-in-charge]()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringED2 Ev+0x37): In function `CObjList<GenSt ring>::~CObjLis t [not-in-charge]()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::~rw_slist [not-in-charge]()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringED1 Ev+0x12): In function `CObjList<GenSt ring>::~CObjLis t [in-charge]()':
: undefined reference to `RW_PSeq<rw_sli st><GenString*, std::allocator> <GenString*> >, RWTPtrSlist<Gen String, std::allocator> <GenString*> >, GenString>::cle arAndDestroy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringED1 Ev+0x1a): In function `CObjList<GenSt ring>::~CObjLis t [in-charge]()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::~rw_slist [not-in-charge]()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringED1 Ev+0x37): In function `CObjList<GenSt ring>::~CObjLis t [in-charge]()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::~rw_slist [not-in-charge]()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI9GenString EED1Ev+0x21): In function `CMapStringToOb j<CObjList><Gen String> >::~CMapStringT oObj [in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, CObjList><GenSt ring>*, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >, RWTPtrMap<GenSt ring, CObjList><GenSt ring>, std::less<GenSt ring>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >, GenString, CObjList<GenStr ing>, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI9GenString EED1Ev+0xa2): In function `CMapStringToOb j<CObjList><Gen String> >::~CMapStringT oObj [in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, CObjList><GenSt ring>*>, std::_Select1st <std:air><GenSt ring* const, CObjList><GenSt ring>*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, CObjList><GenSt ring>*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI9GenString EED1Ev+0x150): In function `CMapStringToOb j<CObjList><Gen String> >::~CMapStringT oObj [in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, CObjList><GenSt ring>*>, std::_Select1st <std:air><GenSt ring* const, CObjList><GenSt ring>*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, CObjList><GenSt ring>*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI9GenString EED2Ev+0x21): In function `CMapStringToOb j<CObjList><Gen String> >::~CMapStringT oObj [not-in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, CObjList><GenSt ring>*, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >, RWTPtrMap<GenSt ring, CObjList><GenSt ring>, std::less<GenSt ring>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >, GenString, CObjList<GenStr ing>, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI9GenString EED2Ev+0xa2): In function `CMapStringToOb j<CObjList><Gen String> >::~CMapStringT oObj [not-in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, CObjList><GenSt ring>*>, std::_Select1st <std:air><GenSt ring* const, CObjList><GenSt ring>*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, CObjList><GenSt ring>*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI9GenString EED2Ev+0x150): In function `CMapStringToOb j<CObjList><Gen String> >::~CMapStringT oObj [not-in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, CObjList><GenSt ring>*>, std::_Select1st <std:air><GenSt ring* const, CObjList><GenSt ring>*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, CObjList><GenSt ring>*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN16CMapSt ringToListI9Gen StringED1Ev+0xb 4): In function `CMapStringToLi st<GenString>:: ~CMapStringToLi st [in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, CObjList><GenSt ring>*, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >, RWTPtrMap<GenSt ring, CObjList><GenSt ring>, std::less<GenSt ring>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >, GenString, CObjList<GenStr ing>, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN16CMapSt ringToListI9Gen StringED2Ev+0xb 4): In function `CMapStringToLi st<GenString>:: ~CMapStringToLi st [not-in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, CObjList><GenSt ring>*, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >, RWTPtrMap<GenSt ring, CObjList><GenSt ring>, std::less<GenSt ring>, std::allocator< std:air><GenStr ing* const, CObjList><GenSt ring>*> > >, GenString, CObjList<GenStr ing>, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI9GenS tringED1Ev+0x21 ): In function `CMapStringToOb j<GenString>::~ CMapStringToObj [in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, GenString*, rw_deref_compar e><std::less><G enString>, GenString>, std::allocator< std:air><GenStr ing* const, GenString*> > >, RWTPtrMap<GenSt ring, GenString, std::less><GenS tring>, std::allocator< std:air><GenStr ing* const, GenString*> > >, GenString, GenString, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI9GenS tringED1Ev+0xa2 ): In function `CMapStringToOb j<GenString>::~ CMapStringToObj [in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, GenString*>, std::_Select1st <std:air><GenSt ring* const, GenString*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, GenString*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, GenString*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI9GenS tringED1Ev+0x15 0): In function `CMapStringToOb j<GenString>::~ CMapStringToObj [in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, GenString*>, std::_Select1st <std:air><GenSt ring* const, GenString*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, GenString*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, GenString*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI9GenS tringED2Ev+0x15 0): In function `CMapStringToOb j<GenString>::~ CMapStringToObj [not-in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, GenString*>, std::_Select1st <std:air><GenSt ring* const, GenString*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, GenString*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, GenString*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8XMLA rrayED1Ev+0x21) : In function `CMapStringToOb j<XMLArray>::~C MapStringToObj [in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, XMLArray*, rw_deref_compar e><std::less><G enString>, GenString>, std::allocator< std:air><GenStr ing* const, XMLArray*> > >, RWTPtrMap<GenSt ring, XMLArray, std::less><GenS tring>, std::allocator< std:air><GenStr ing* const, XMLArray*> > >, GenString, XMLArray, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8XMLA rrayED1Ev+0xa2) : In function `CMapStringToOb j<XMLArray>::~C MapStringToObj [in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, XMLArray*>, std::_Select1st <std:air><GenSt ring* const, XMLArray*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, XMLArray*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, XMLArray*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8XMLA rrayED1Ev+0x150 ): In function `CMapStringToOb j<XMLArray>::~C MapStringToObj [in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, XMLArray*>, std::_Select1st <std:air><GenSt ring* const, XMLArray*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, XMLArray*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, XMLArray*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8XMLA rrayED2Ev+0x21) : In function `CMapStringToOb j<XMLArray>::~C MapStringToObj [not-in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, XMLArray*, rw_deref_compar e><std::less><G enString>, GenString>, std::allocator< std:air><GenStr ing* const, XMLArray*> > >, RWTPtrMap<GenSt ring, XMLArray, std::less><GenS tring>, std::allocator< std:air><GenStr ing* const, XMLArray*> > >, GenString, XMLArray, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8XMLA rrayED2Ev+0xa2) : In function `CMapStringToOb j<XMLArray>::~C MapStringToObj [not-in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, XMLArray*>, std::_Select1st <std:air><GenSt ring* const, XMLArray*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, XMLArray*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, XMLArray*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8XMLA rrayED2Ev+0x150 ): In function `CMapStringToOb j<XMLArray>::~C MapStringToObj [not-in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, XMLArray*>, std::_Select1st <std:air><GenSt ring* const, XMLArray*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, XMLArray*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, XMLArray*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI8XMLArrayE ED1Ev+0x21): In function `CMapStringToOb j<CObjList><XML Array> >::~CMapStringT oObj [in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, CObjList><XMLAr ray>*, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><XMLAr ray>*> > >, RWTPtrMap<GenSt ring, CObjList><XMLAr ray>, std::less<GenSt ring>, std::allocator< std:air><GenStr ing* const, CObjList><XMLAr ray>*> > >, GenString, CObjList<XMLArr ay>, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI8XMLArrayE ED1Ev+0xa2): In function `CMapStringToOb j<CObjList><XML Array> >::~CMapStringT oObj [in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, CObjList><XMLAr ray>*>, std::_Select1st <std:air><GenSt ring* const, CObjList><XMLAr ray>*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><XMLAr ray>*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, CObjList><XMLAr ray>*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI8XMLArrayE ED1Ev+0x150): In function `CMapStringToOb j<CObjList><XML Array> >::~CMapStringT oObj [in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, CObjList><XMLAr ray>*>, std::_Select1st <std:air><GenSt ring* const, CObjList><XMLAr ray>*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><XMLAr ray>*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, CObjList><XMLAr ray>*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI8XMLArrayE ED2Ev+0x21): In function `CMapStringToOb j<CObjList><XML Array> >::~CMapStringT oObj [not-in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, CObjList><XMLAr ray>*, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><XMLAr ray>*> > >, RWTPtrMap<GenSt ring, CObjList><XMLAr ray>, std::less<GenSt ring>, std::allocator< std:air><GenStr ing* const, CObjList><XMLAr ray>*> > >, GenString, CObjList<XMLArr ay>, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI8XMLArrayE ED2Ev+0xa2): In function `CMapStringToOb j<CObjList><XML Array> >::~CMapStringT oObj [not-in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, CObjList><XMLAr ray>*>, std::_Select1st <std:air><GenSt ring* const, CObjList><XMLAr ray>*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><XMLAr ray>*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, CObjList><XMLAr ray>*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI8XMLArrayE ED2Ev+0x150): In function `CMapStringToOb j<CObjList><XML Array> >::~CMapStringT oObj [not-in-charge]()':
: undefined reference to `std::_Rb_tree< GenString*, std:air><GenStr ing* const, CObjList><XMLAr ray>*>, std::_Select1st <std:air><GenSt ring* const, CObjList><XMLAr ray>*> >, rw_deref_compar e<std::less><Ge nString>, GenString>, std::allocator< std:air><GenStr ing* const, CObjList><XMLAr ray>*> > >::_M_erase(std ::_Rb_tree_node <std:air><GenSt ring* const, CObjList><XMLAr ray>*> >*)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN15CMapSt ringToObjI8CObj ListI8XMLArrayE E5PrintEv+0xaa) : In function `CMapStringToOb j<CObjList><XML Array> >::Print()':
: undefined reference to `CObjList<XMLAr ray>::Print()'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringE8P rintDrvEv+0x45) : In function `CObjList<GenSt ring>::PrintDrv ()':
: undefined reference to `RWTPtrSlistIte rator<GenString , std::allocator> <GenString*> >::operator++() '
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringE8P rintDrvEv+0xac) : In function `CObjList<GenSt ring>::PrintDrv ()':
: undefined reference to `RWTPtrSlistIte rator<GenString , std::allocator> <GenString*> >::operator++() '
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringE5P rintEv+0x34): In function `CObjList<GenSt ring>::Print()' :
: undefined reference to `RWTPtrSlistIte rator<GenString , std::allocator> <GenString*> >::operator++() '
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringE5P rintEv+0x79): In function `CObjList<GenSt ring>::Print()' :
: undefined reference to `RWTPtrSlistIte rator<GenString , std::allocator> <GenString*> >::operator++() '
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringE4S ortEv+0x176): In function `CObjList<GenSt ring>::Sort()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::erase(rw_sli st<GenString*, std::allocator> <GenString*> >::Iterator)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringE4S ortEv+0x1da): In function `CObjList<GenSt ring>::Sort()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::erase(rw_sli st<GenString*, std::allocator> <GenString*> >::Iterator)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringE4S ortEv+0x25b): In function `CObjList<GenSt ring>::Sort()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::insert(rw_sl ist<GenString*, std::allocator> <GenString*> >::Iterator, GenString* const&)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN8CObjLis tI9GenStringE4S ortEv+0x2e4): In function `CObjList<GenSt ring>::Sort()':
: undefined reference to `rw_slist<GenSt ring*, std::allocator> <GenString*> >::insert(rw_sl ist<GenString*, std::allocator> <GenString*> >::Iterator, GenString* const&)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN14RWTThr eadLocalIiE9cre ateKeyEv+0x129) : In function `RWTThreadLocal <int>::createKe y()':
: undefined reference to `RWTHRResourceL imit::RWTHRReso urceLimit[in-charge](RWClassicCStri ng const&)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN14RWTThr eadLocalIiE9cre ateKeyEv+0x192) : In function `RWTThreadLocal <int>::createKe y()':
: undefined reference to `RWTHRResourceL imit::RWTHRReso urceLimit[in-charge](RWClassicCStri ng const&)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN14RWTThr eadLocalIiE3set EPv+0xf2): In function `RWTThreadLocal <int>::set(void *)':
: undefined reference to `RWTHRResourceL imit::RWTHRReso urceLimit[in-charge](RWClassicCStri ng const&)'
../utils/libutils.a(osdt emplateinstant. o)(.gnu.linkonc e.t._ZN14RWTThr eadLocalIiE8set ValueERKi+0x51) : In function `RWTThreadLocal <int>::setValue (int const&)':
: undefined reference to `vtable for RWTTLD<int>'
../utils/libutils.a(shar eddatastore.o)( .text+0x22c): In function `XMLArray::~XML Array [in-charge]()':
: undefined reference to `RW_PMapAssoc<s td::map><GenStr ing*, GenString*, rw_deref_compar e><std::less><G enString>, GenString>, std::allocator< std:air><GenStr ing* const, GenString*> > >, RWTPtrMap<GenSt ring, GenString, std::less><GenS tring>, std::allocator< std:air><GenStr ing* const, GenString*> > >, GenString, GenString, std::less<GenSt ring> >::clearAndDest roy()'
../utils/libutils.a(shar eddatastore.o)( .text+0x234): In function `XMLArray::~XML Array [in-charge]()':
: undefined reference to `RW_PSeq<rw_sli st><GenString*, std::allocator> <GenString*> >, RWTPtrSlist<Gen String, std::allocator> <GenString*> >, GenString>::cle arAndDestroy()'


Thanks
Raju
Jul 2 '07 #1
2 2722
weaknessforcats
9,208 Recognized Expert Moderator Expert
I expect you are not building the the RW software correctly. RW has a lot of switches you need to set.

Linker errors mean so code you need has not been included. Those RW templates have a lot of conditional code based on the target platform.

If everything fails, contact RW.
Jul 2 '07 #2
pssraju
6 New Member
RW has been built with the available options using RCB. Infact stand alone RW test examples are working fine. Here is compilation & linking options for RW and its examples.

RW example compilation options
------------------------------------------------
g++ -m32 -D_RWCONFIG=15d0 3 -I./../../.. -I.. -I. -D_RWBUILD_tls -fPIC -g -pthread --pedantic -DRW_CLASSIC_STR ING_CLASSES -Wall -W -Wno-long-long -c ../btree.cpp

g++ -m32 -D_RWCONFIG=15d0 3 -I/usr/roguewave/RogueWave/SourcePro/Ed9/3rdparty/icu-3.4/suse/amd64-32b-gcc3.3.3/include -I./../../../.. -I.. -I. -g -pthread -DRW_CLASSIC_STR ING_CLASSES -c ../SortingStrings. cpp


RW examples compilation option
------------------------------------------------
g++ -m32 -DRW_CLASSIC_STR ING_CLASSES -pthread -L./../../../../lib -L/usr/roguewave/RogueWave/SourcePro/Ed9/3rdparty/icu-3.4/suse/amd64-32b-gcc3.3.3/lib -o RegularExpressi onWordBreaks RegularExpressi onWordBreaks.o -li18n1415d03 -licudata -licui18n -licuuc -lthread2415d03 -litc2315d03 -lfunctor_list23 15d03 -lfunctor2315d03 -lpointer2515d03 -lsync2415d03 -lthrexcept2315d 03 -ltrace2315d03 -ltls71015d03 -lnsl
Jul 3 '07 #3

Sign in to post your reply or Sign up for a free account.

Similar topics

1
2552
by: Thomas Lenarz | last post by:
Hello, we have got C++-programs (older SUN-Compiler) using the Rogue-Wave-Class-Library and consider to port the application to AIX 5.2 (GNU gcc/g++) The only drawback we could find ist the use of the Rogue-Wave-Class-Library which I think SUN delivers with it's compiler suit.
1
1607
by: Don Tucker | last post by:
Hello, I am receiving the following compile-time error: /opt/include/rw/dcomplex.h line 218 error(1420): argument list for class template "complex" is missing typedef complex DComplex when compiling with a MIPSpro c++ compiler on an SGI platform. I see nothing about the header file that has been modified from its original state. Also, if the right precompiler conditions are met,
3
14508
by: Saurabh Aggrawal | last post by:
Hi, I am porting an application for 64-bit AMD processor and while linking the application i am getting the following errors: Processing directory uidll... Linking DLL G:\NewUIPackers1\drivers\Unser\bin\WIN32\DEBUG\PPKAW1UI.dll .... LINK : warning LNK4224: /PDBTYPE is no longer supported; ignored UIDLL.def : error LNK2001: unresolved external symbol DllCanUnloadNow
5
2535
by: Old Wolf | last post by:
The following code causes a deallocation of a random amount of bytes, with the Rogue Wave STL supplied with Borland C++ 5.5.1 : #include <vector> int main() { std::vector<char> v, w(1); v = w; }
0
1810
by: sebor | last post by:
Hi all, The latest release of the Rogue Wave C++ Standard Library, version 4.1.0, has just been released into public domain under the Apache License, version 2.0, as the Apache stdcxx project: http://incubator.apache.org/stdcxx The stdcxx project is a complete implementation of the C++ Standard Library with a Class Reference, a comprehensive User Guide, and an extensive set of example programs.
0
1059
by: Drew | last post by:
I am attempting to clean up some code by breaking a large mixed-mode Managed C++ library into two. I cannot get the darn thing to compile or link (depending on what I do). I have two libraries (projects). One called "core" and the other called "server". If I use #include's (not using references in VS 2003) from the "server"
5
3003
by: prakash.mirji | last post by:
I am using evaluation copy of RW 9.0 for porting one of C++ application on RHEL4 (x86 platform). We are getting some issues into RW template classes. Please need assistance on this issue. Here is the problem: Application is using below mentioned template class which is declared at static in Engine.h
5
6278
by: etoile | last post by:
The code is on a SUN platform. From a detailed design point of view, what is needed to eliminate Rogue Wave from the C++ code. Just scanning for RW in the code, here is a list: RWCstring RWHashDictionary RWHashDictionaryIterator RWCollectable RWCollectableString RWCollectableInt RWGSlist
1
2678
by: Steven Backus | last post by:
I inherited a Solaris c++ program that uses Rogue Wave and am trying to port it to linux. It seg faults in this code: for (int size = entries() - 1; size 1; --size) { RWOrderedIterator vectofclusts_iter(*((RWOrdered*) at(size))); CCluster* pc; while ((pc = (CCluster*) vectofclusts_iter()) != NIL) pc->writeChartTo(fout); }
0
8069
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8503
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8488
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
8160
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8358
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
3972
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
2479
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
1
1611
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
1339
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.