Migrating from Sun forty seven to Sun studio 11 C++ compiler
Hi All,
I am getting the following linking errors while compiling with Sun Studio 11 compiler.
Linking /vobs/sphinx/solaris/bin/spx_bo_feed for PROD_DESTEXE
/vobs/environment/maketools/atria_cxxl /vobs/sphinx/solaris/bin/spx_bo_feed SunCC SunCC4.0 CC PURELINK -O2 -DOSREV=551 -Dunix -DNDEBUG -DSOL_NODCE -DCPLUSREL=4 -DCPLUSVER=4 -DCPLUSREV=1 -Dsvr4-L/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib -L/export/opt/SUNWspro/prod/lib -R/export/opt/SUNWspro/prod/lib -L/home/pyramid/n018503/opt/ptms/7.0.7.0/solaris/lib -L/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib -L/opt/open_client/11.1.1.7883/solaris/lib -R/opt/open_client/11.1.1.7883/solaris/lib -o /vobs/sphinx/solaris/bin/spx_bo_feed solaris/e/spx_bo_feed.o solaris/e/SpxBoFeedError.o solaris/e/SpxBoFeedRecord.o solaris/e/SpxBoFeedInfo.o solaris/e/SpxBoFeedCreator.o solaris/e/SpxBoFeedDb.o solaris/e/SpxBoFeedMsg.o solaris/e/SpxBoFeedSendPTMS.o solaris/e/SpxBoFeedSendFile.o solaris/e/SpxBoFeedPerfTime.o -Bstatic -lmapi -lmapiutil -Bstatic -L/apps/GMC/2.1.0.0/solaris/lib -lgmc_ultraLite -Bstatic -Bstatic -lptms -lmds -Bstatic /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/dbsdlib.o -Bdynamic -lctl7d -ldbt7d -ltls7d -Bdynamic -lsybdb -lct -lcs -lcomn -ltcl -ltli -Bdynamic -lsocket -lnsl -lintl -lposix4
@@@@@
@@@@@ PTREP="/vobs/sphinx/solaris/bin/spx_bo_feed.ptrep"
@@@@@
Undefinedfirst referenced
symbolin file
cerrsolaris/e/SpxBoFeedError.o
clog/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
coutsolaris/e/spx_bo_feed.o
stream_rmutex::rmutex_unlock(void)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapi.a(ACC_ROLE_Mapi.o)
streambuf::sync(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
_vector_des_solaris/e/SpxBoFeedSendPTMS.o
_vector_con_/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libctl7d.so
unsafe_ostream::operator<<(double) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
unsafe_ostream::operator<<(long) solaris/e/spx_bo_feed.o
CSMessage::CSMessage(const char*, const char*, const char*, const int)solaris/e/SpxBoFeedSendPTMS.o
fstream::fstream(const char*, int, int)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(MAPIFile.o)
fstreambase::attach(int)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(Tracer.o)
istream::read(char*, int)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(MAPIFile.o)
Provider::Connect(char*) solaris/e/SpxBoFeedSendPTMS.o
_ex_keylock /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
unsafe_istream::do_get(void) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
ios::ios(streambuf*) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
ostream::tellp(void)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(MAPIFile.o)
streambuf::streambuf(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
streambuf::~streambuf(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
operator delete(void*)solaris/e/spx_bo_feed.o
operator new(unsigned int)solaris/e/spx_bo_feed.o
istream::putback(char)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
ios::init(streambuf*)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
ios::setf(long, long)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(Tracer.o)
ostream::flush(void)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapi.a(ACC_ROLE_Mapi.o)
__rtbany_f(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
_pure_error_/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapi.a(Base_Mapi.o)
[Hint: try checking whether you are linking with the correct libC]
ostrstream::ostrstream(char*, int, int) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
istream::get(char*, int, char)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(MAPIFile.o)
streambuf::doallocate(void) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
Iostream_init::Iostream_init(void)solaris/e/spx_bo_feed.o
Iostream_init::~Iostream_init(void)solaris/e/spx_bo_feed.o
istrstream::istrstream(char*)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
ofstream::ofstream(const char*, int, int)solaris/e/SpxBoFeedSendFile.o
_ex_getsolaris/e/spx_bo_feed.o
unsafe_ios::floatfield /home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(Tracer.o)
[Hint: static member unsafe_ios::floatfield must be defined in the program]
unsafe_ostream::operator<<(unsigned long) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
ends(ostream&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
endl(ostream&)solaris/e/spx_bo_feed.o
setprecision(int)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapi.a(ACC_ROLE_Mapi.o)
CSMessage::~CSMessage(void)solaris/e/SpxBoFeedSendPTMS.o
Provider::Send(CSMessage*, int)solaris/e/SpxBoFeedSendPTMS.o
ostrstream::~ostrstream(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
ostream::ostream(streambuf*) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
istream::istream(streambuf*) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
flush(ostream&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
istream::operator>>(short&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
istream::operator>>(double&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
istream::operator>>(float&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
istream::operator>>(int&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
istream::operator>>(long&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
ostream::operator<<(unsigned long)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapi.a(ACC_ROLE_ListMapi.o)
ostream::operator<<(void*)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapi.a(ACC_ROLE_Mapi.o)
_ex_rethrow /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
ostream::operator<<(ios& (*)(ios&))/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
istream::operator>>(unsigned int&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
istream::operator>>(unsigned long&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
istream::operator>>(unsigned short&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
streambuf::seekoff(long, unsafe_ios::seek_dir, int) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
Node::Node(char*, Return_Code (*)(...))solaris/e/SpxBoFeedSendPTMS.o
fstreambase::close(void) solaris/e/SpxBoFeedSendFile.o
ws(istream&)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
stream_rmutex::rmutex_lock(void)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapi.a(ACC_ROLE_Mapi.o)
ios::~ios(void) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
ios::ios(void) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
setw(int) /home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapi.a(ACC_ROLE_Mapi.o)
unsafe_ios::clear(int) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
strstreambuf::str(void) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
unsafe_ios::setstate(int)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(MAPIFile.o)
filebuf::openprotsolaris/e/SpxBoFeedSendFile.o
[Hint: static member filebuf::openprot must be defined in the program]
ios::pword(int) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
streambuf::sgetn_unlocked(char*, int)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
unsafe_ios::unsafe_ios(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
unsafe_ios::~unsafe_ios(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
unsafe_ostream::do_opfx(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
unsafe_ostream::do_osfx(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
unsafe_istream::do_ipfx(int)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(MAPIFile.o)
streambuf::sputn_unlocked(const char*, int)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(MAPIFile.o)
unsafe_ostream::outstr(const char*, const char*)solaris/e/spx_bo_feed.o
ofstream::ofstream(void)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(Tracer.o)
ofstream::~ofstream(void)/home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(Tracer.o)
StPTMSSybaseData::~StPTMSSybaseData(void)solaris/e/SpxBoFeedSendPTMS.o
_ex_skipsolaris/e/spx_bo_feed.o
streambuf::pbackfail(int)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
newSybDbLibDatabaseImp /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/dbsdlib.o
__RT_USER::__RT_USER(char*, void*)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
__RT_USER::__vtblsolaris/e/spx_bo_feed.o
[Hint: try checking whether the first non-inlined, non-pure virtual function of class __RT_USER is defined]
istrstream::~istrstream(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libdbt7d.so
_ex_allocsolaris/e/SpxBoFeedRecord.o
_ex_cleansolaris/e/spx_bo_feed.o
_ex_throwsolaris/e/SpxBoFeedRecord.o
static ios::xalloc(void)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
streambuf::setp(char*, char*) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
_ex_rethrow_qsolaris/e/spx_bo_feed.o
__RT_BASE::__RT_BASE(__RT_USER*, __RT_BASE*, int, __RT_BASE::ac_mode, int) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
__RT_CLASS::__RT_CLASS(char*, __RT_BASE*, void*)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
ostream::seekp(long, unsafe_ios::seek_dir) /home/sbl/sblrel/opt/mapi/5.0.8.4/solaris/lib/libmapiutil.a(MAPIFile.o)
streambuf::seekpos(long, int)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
ostream::~ostream(void) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
ostream::operator<<(double) solaris/e/SpxBoFeedPerfTime.o
ostream::operator<<(long) solaris/e/SpxBoFeedMsg.o
istream::~istream(void) /home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
streambuf::setg(char*, char*, char*)/home/pyramid/n018503/dbtools/7.0.8.5/solaris/lib/libtls7d.so
I am mentioning the following details which I am using in one of my Makefile. :
# -- Compiler options
CPPFLAGS = -I. -I../include $(INC_PATHS) $(_INC_PATHS)
CCFLAGS+= -I. -I../include $(INC_PATHS) $(_INC_PATHS)
#CCFLAGS+= -compat=4 -library=rwtools7
CCFLAGS+= -compat=4 -library=rwtools7
#CCFLAGS+= -library=no%Cstd,iostream,rwtools7
#CCFLAGS+= -library=rwtools7_std
LDFLAGS+= $(LINK_PATHS) $(_LINK_PATHS)
Please let me know if any further information is needed from my side.
Cheers,
Rasmi

