Operating System - HP-UX
1832592 Members
2365 Online
110043 Solutions
New Discussion

Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

 
SOLVED
Go to solution
AmolPatel
Advisor

Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Hello All,

 

While migrating from HP UX PA RISC (32 bit) with ORBacus compiler(CORBA) to HP UX Itanium (64 bit) with VisiBroker compiler(CORBA) we are getting the following linker error in a module compilation.

I tried including the necessary libraries(in Makefile) needed towards the same but however there is no success till now.

aCC -ext -mt -Wl,+s +DD64  -L/usr/lib/hpux64  -L/RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release  -L/development0/rlp/xerces2.8/lib  -L/development0/rlp/VisiBroker/lib -L/oracle/g01/software/rdbms/10.2.0.5/lib   ThePvsngDeltaReconGuiServer.o  Main.o   -lants_nv_sw_delta_recon_c  -lDb_ANTS  -lfw  -Wl,-a,shared -ldynany64_pr  -Wl,-a,shared -ldynany64_r  -Wl,-a,shared -lorbcore64_r  -Wl,-a,shared -lorbcore64_pr  -Wl,-a,shared -lcosnm64_pr  -Wl,-a,shared -lcosnm64_r  -Wl,-a,shared -lorb64_r  -Wl,-a,shared -lorb64_pr  -Wl,-a,shared -lfw64_r  -Wl,-a,shared -lfw64_pr  -Wl,-a,shared -ldsuser64_r  -Wl,-a,shared -ldsuser64_pr -Wl,-a,shared -ldbi  -Wl,-a,shared -lclntsh -Wl,-a,shared -lceg_mt -lpthread -lstream -o /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/bin/release/ANTSDeltaReconNetviewSw
ld: Unsatisfied symbol "CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete)" in file Main.o
ld: (Warning) Unsatisfied symbol "CORBA_Object::_hash(unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libants_nv_sw_delta_recon_c.so
ld: (Warning) Unsatisfied symbol "CORBA_StringSequence::operator[](unsigned long) const" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "PortableServer_ServantBase::_hash(unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CosNaming::Name::operator[](unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_PolicyList::CORBA_PolicyList(unsigned long)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_TypeInfo::CORBA_TypeInfo(char const*,CORBA_Object* (*)(PortableServer_POA*,CORBA_OctetSequence const&),unsigned long,CORBA_MethodDescription*,PortableServer_ServantBase* (*)(VISList<VISObjectWrapper* (*)()>&,PortableServer_ServantBase*),unsigned long,VISObjectWrapper* (*)()*)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CosNaming::Name::Name(unsigned long)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: Unsatisfied symbol "CORBA_StringSequence::operator[](unsigned long)" in file Main.o
ld: (Warning) Unsatisfied symbol "CosNaming::Name::operator[](unsigned long) const" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: Unsatisfied symbol "CORBA_StringSequence::length(unsigned long)" in file Main.o
ld: (Warning) Unsatisfied symbol "CORBA_TypeInfo::CORBA_TypeInfo(char const*,char const*,CORBA_Object* (*)(VISList<VISObjectWrapper* (*)()>&,CORBA_Object*),CORBA_Object* (*)(),VISObjectWrapper* (*)()*,unsigned long,VISObjectWrapper* (*)()*,unsigned long,...)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libants_nv_sw_delta_recon_c.so
ld: Unsatisfied symbol "CORBA_StringSequence::CORBA_StringSequence(unsigned long)(complete)" in file Main.o
ld: (Warning) Unsatisfied symbol "CORBA_PolicyList::length(unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: Unsatisfied symbol "CORBA_LongSeq::operator[](unsigned long)" in file Main.o
ld: (Warning) Unsatisfied symbol "CosNaming::Name::length(unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_PolicyList::operator[](unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: Unsatisfied symbol "CORBA_LongSeq::length(unsigned long)" in file Main.o
12 warnings.
6 errors.
*** Error exit code 1

Request you to kindly any help towards rectifying the same as it has been 1 week+ but I'm stuck on the same issue.

Please let me know in case any more information is required towards the same.

 

Thanks

Regards

Amol.

23 REPLIES 23
Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>we are getting the following linker error in a module compilation.

 

>-L/usr/lib/hpux64

 

This is the default for +DD64, remove it.

 

>-Wl,-a,shared -ldynany64_pr

 

Why have those -Wl,-a,shared?  Just leave them out.

 

>-lpthread -lstream

 

-lpthread isn't needed with -mt.  Remove -lstream since you can't mix and match -AP and -AA.

 

>ld: Unsatisfied symbol "CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete)" in file Main.o

>ld: Unsatisfied symbol "CORBA_StringSequence::operator[](unsigned long)"

 

Where should all these symbols be defined?

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Dennis,

 

Actually there are some .idl files (CORBA) which generates client.hpp/cpp and server.hpp/cpp files. So the symbols are generated by the VisiBroker idl compiler used for compiling .idl files.

In another module I'm getting some linker warnings and no linker errors. Below are the warnings:

 

aCC -ext -mt -Wl,+s +DD64  -L/usr/lib/hpux64  -L/RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release  -L/development0/rlp/xerces2.8/lib  -L/development0/rlp/VisiBroker/lib -L/oracle/g01/software/rdbms/10.2.0.5/lib   SvcVwGuiServer.o  -lfw  -lants_common_s  -lDb_ANTS  -lservice_s  -lservice_lca_s  -lservice_lbs_s  -lservice_csa_s  -lservice_mobile_code_s  -lservice_trunkgroup_s  -lservice_adc_s  -lants_verify_s  -lants_mobile_code_s  -lswitch_init_ui_s  -lants_lca_s  -lants_lca_ui_s  -lants_adc_s  -lxerces-c  -lxerces-depdom  -lants_trunkgroup_s  -Wl,-a,shared -ldynany64_pr  -Wl,-a,shared -ldynany64_r  -Wl,-a,shared -lorbcore64_r  -Wl,-a,shared -lorbcore64_pr  -Wl,-a,shared -lcosnm64_pr  -Wl,-a,shared -lcosnm64_r  -Wl,-a,shared -lorb64_r  -Wl,-a,shared -lorb64_pr  -Wl,-a,shared -lfw64_r  -Wl,-a,shared -lfw64_pr  -Wl,-a,shared -ldsuser64_r  -Wl,-a,shared -ldsuser64_pr -Wl,-a,shared -ldbi  -Wl,-a,shared -lclntsh -Wl,-a,shared -lceg_mt -lpthread -lstream -o /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/bin/release/ANTSSvcVwGuiServer
ld: (Warning) Unsatisfied symbol "CORBA_Object::_hash(unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_StringSequence::operator[](unsigned long) const" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "PortableServer_ServantBase::_hash(unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CosNaming::Name::operator[](unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_PolicyList::CORBA_PolicyList(unsigned long)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_TypeInfo::CORBA_TypeInfo(char const*,CORBA_Object* (*)(PortableServer_POA*,CORBA_OctetSequence const&),unsigned long,CORBA_MethodDescription*,PortableServer_ServantBase* (*)(VISList<VISObjectWrapper* (*)()>&,PortableServer_ServantBase*),unsigned long,VISObjectWrapper* (*)()*)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CosNaming::Name::Name(unsigned long)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_LongSeq::operator[](unsigned long) const" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libants_verify_s.so
ld: (Warning) Unsatisfied symbol "CORBA_ShortSeq::operator[](unsigned long) const" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libants_lca_ui_s.so
ld: (Warning) Unsatisfied symbol "work::element::ElementPayloadGenerator::get()" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_elem_s.so
ld: (Warning) Unsatisfied symbol "CosNaming::Name::operator[](unsigned long) const" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_TypeInfo::CORBA_TypeInfo(char const*,char const*,CORBA_Object* (*)(VISList<VISObjectWrapper* (*)()>&,CORBA_Object*),CORBA_Object* (*)(),VISObjectWrapper* (*)()*,unsigned long,VISObjectWrapper* (*)()*,unsigned long,...)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_StringSequence::CORBA_StringSequence(unsigned long)(complete)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libants_common_s.so
ld: (Warning) Unsatisfied symbol "CORBA_PolicyList::length(unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CosNaming::Name::length(unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
ld: (Warning) Unsatisfied symbol "CORBA_PolicyList::operator[](unsigned long)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libfw.so
16 warnings.

 

Also by comparing warnings related to StringSequence and LongSeq I see that there are differences towards the same for e.g.

Unsatisfied symbol "CORBA_StringSequence::operator[](unsigned long) const" as above is different then 

Unsatisfied symbol "CORBA_StringSequence::operator[](unsigned long)" what I get in Main.o.

 

Unsatisfied symbol "CORBA_LongSeq::operator[](unsigned long) const" as above is different then 

Unsatisfied symbol "CORBA_LongSeq::operator[](unsigned long)" what I get from Main.o

 

I'm unable to figure what changes should be done in idl files in order to remove the same.

 

Thanks

Regards

Amol.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Can anybody please help me on how to find on why the linker error comes during linking i.e. if there are any flags available during link/compile time which conveys wht is referencing that particular error.

 

Thanks

Amol.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

 

Request you all to kindly help me on the below error.

Or atleast help me out to trace why the linker error is thrown i.e. due to which missing function definition.

Is there are any way to find out what is getting reference at time of linking Main.cpp file and other libraries??

 

Thanks

Amol.

 

 

Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>Actually there are some .idl files (CORBA) which generates client.hpp/cpp and server.hpp/cpp files

 

Do you compile these and put them in your libfw.so?

 

>I'm unable to figure what changes should be done in idl files in order to remove the same.

 

You need to find where these are defined:

fgrep CORBA_StringSequence *.C *.cpp

 

>if there are any flags available during link/compile time which conveys what is referencing that particular error.

 

These messages give you the name of the object that is referencing them:

ld: Unsatisfied symbol "CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete)" in file Main.o

 

For these, you need to relink the shlib libfw.so to find the object:

ld: (Warning) Unsatisfied symbol "CORBA_PolicyList::operator[](unsigned long)" in file.../libfw.so

 >due to which missing function definition.

 

The message gives you the function name.

 

>Is there are any way to find out what is getting reference at time of linking Main.cpp file and other libraries?

 

You could link with -Wl,-v for a verbose link steps.

If you can get the mangled name, you can use:

 nm -px  libfw.so | c++filt -o | fgrep CORBA_PolicyList::operator

 

And you'll get something like:

0x00000000 U  CORBA_PolicyList::operator[](unsigned long)[_ZN16CORBA_PolicyListixEm]

 

Then you can link with: -Wl,-y_ZN16CORBA_PolicyListixEm

 

And you can also search mass quantities of libs:

nm -pxAN objects libs executables | fgrep _ZN16CORBA_PolicyListixEm

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

 

 

Hello Dennis,

 

Thanks for the suggestion.

After putting the flag -Wl,-v for verbose output during link time I found that Visibroker libraries dont have "CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete)" instead they have "CORBA_LongSeq::CORBA_LongSeq(unsigned int)(complete)" i.e. they have integer defined functions and not long defined functions.

Howvever Visibroker link Visibroker tells that they dont support int rather they support short and long.

Please find attached the verbose output and kindly help me out to get over the linker error.

 

Thanks

Regards

Amol.

 

 

CORBA_LongSeq::CORBA_LongSeq(unsigned int)(complete) is DEFINED GLOBAL FUNC
Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>However Visibroker link Visibroker tells that they don't support int rather they support short and long.

 

Where does it say anything?  I just see: LongSeq(CORBA::ULong _max=0);

 

Looking at the constructors for CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete):

Unsat: Main.o:

Loading /development0/rlp/VisiBroker/lib/liborbcore64_r.so:

CORBA_LongSeq::CORBA_LongSeq(unsigned int)(complete) is DEFINED GLOBAL FUNC

 

Did you build liborbcore64_r.so or Main.o or both?

If only Mail.o, please attach a gzipped .i file created by adding "-E -.i" to your compile line.

If you have the source to the shlib, we could see if there was an evil macro that is changing the type.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Hello Dennis,

 

As per your previous post

I tried command nm -px liborbcore64_r.so | c++filt -o | fgrep "CORBA_LongSeq" on liborbcore64_r.so library and output of the same was as below which does not has the pattern CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete)

 

0x4000000000c48170 T _pretty_print(VISostream&,CORBA_LongSeq const&)[_Z13_pretty_printR10VISostreamRK13CORBA_LongSeq]
0x4000000000cb92a0 T CORBA_LongSeq::get_buffer(unsigned char)[_ZN13CORBA_LongSeq10get_bufferEh]
0x4000000000cb9040 T CORBA_LongSeq::length(unsigned int)[_ZN13CORBA_LongSeq6lengthEj]
0x4000000000c49620 T CORBA_LongSeq::freebuf(int*)[_ZN13CORBA_LongSeq7freebufEPi]
0x4000000000cb91e0 T CORBA_LongSeq::replace(unsigned int,unsigned int,int*,unsigned char)[_ZN13CORBA_LongSeq7replaceEjjPih]
0x4000000000c49680 T CORBA_LongSeq::allocbuf(unsigned int)[_ZN13CORBA_LongSeq8allocbufEj]
0x4000000000cb8d60 T CORBA_LongSeq::CORBA_LongSeq(CORBA_LongSeq const&)(complete)[_ZN13CORBA_LongSeqC1ERKS_]
0x4000000000c49940 T CORBA_LongSeq::CORBA_LongSeq(unsigned int)(complete)[_ZN13CORBA_LongSeqC1Ej]
0x4000000000cb8c40 T CORBA_LongSeq::CORBA_LongSeq(unsigned int,unsigned int,int*,unsigned char)(complete)[_ZN13CORBA_LongSeqC1EjjPih]
0x4000000000cb8f40 T CORBA_LongSeq::CORBA_LongSeq(CORBA_LongSeq const&)(base)[_ZN13CORBA_LongSeqC2ERKS_]
0x4000000000cb8bc0 T CORBA_LongSeq::CORBA_LongSeq(unsigned int)(base)[_ZN13CORBA_LongSeqC2Ej]
0x4000000000cb8ce0 T CORBA_LongSeq::CORBA_LongSeq(unsigned int,unsigned int,int*,unsigned char)(base)[_ZN13CORBA_LongSeqC2EjjPih]
0x4000000000bea840 T CORBA_LongSeq::~CORBA_LongSeq()(deallocating)[_ZN13CORBA_LongSeqD0Ev]
0x4000000000bea760 T CORBA_LongSeq::~CORBA_LongSeq()(complete)[_ZN13CORBA_LongSeqD1Ev]
0x4000000000cb8fc0 T CORBA_LongSeq::~CORBA_LongSeq()(base)[_ZN13CORBA_LongSeqD2Ev]
0x4000000000c4bb00 T CORBA_LongSeq::operator=(CORBA_LongSeq const&)[_ZN13CORBA_LongSeqaSERKS_]
0x4000000000cb9340 T CORBA_LongSeq::operator[](unsigned int)[_ZN13CORBA_LongSeqixEj]
0x4000000000cba0c0 T CORBA_LongSeq_var::operator[](unsigned int)[_ZN17CORBA_LongSeq_varixEj]
0x40000000006e9c80 T VISDataInputStream::read_long_array(CORBA_LongSeq&,unsigned int,unsigned int)[_ZN18VISDataInputStream15read_long_arrayER13CORBA_LongSeqjj]
0x40000000006e6e60 T VISDataOutputStream::write_long_array(CORBA_LongSeq const&,unsigned int,unsigned int)[_ZN19VISDataOutputStream16write_long_arrayERK13CORBA_LongSeqjj]
0x4000000000beb100 T _CORBA_LongSeq_AliasHelper::read_value(VISistream&)[_ZN26_CORBA_LongSeq_AliasHelper10read_valueER10VISistream]
0x4000000000beaf20 T _CORBA_LongSeq_AliasHelper::helper_info()[_ZN26_CORBA_LongSeq_AliasHelper11helper_infoEv]
0x4000000000bea8e0 T _CORBA_LongSeq_AliasHelper::print_value(VISostream&)[_ZN26_CORBA_LongSeq_AliasHelper11print_valueER10VISostream]
0x60000000000fd580 D _CORBA_LongSeq_AliasHelper::_helper_info[_ZN26_CORBA_LongSeq_AliasHelper12_helper_infoE]
0x4000000000beaf60 T _CORBA_LongSeq_AliasHelper::len()[_ZN26_CORBA_LongSeq_AliasHelper3lenEv]
0x4000000000beaf40 T _CORBA_LongSeq_AliasHelper::value()[_ZN26_CORBA_LongSeq_AliasHelper5valueEv]
0x4000000000cb9bc0 T _CORBA_LongSeq_AliasHelper::factory(CORBA_TypeCode*)[_ZN26_CORBA_LongSeq_AliasHelper7factoryEP14CORBA_TypeCode]
0x4000000000bea960 T _CORBA_LongSeq_AliasHelper::deep_copy()[_ZN26_CORBA_LongSeq_AliasHelper9deep_copyEv]
0x4000000000c4a9c0 T _CORBA_LongSeq_AliasHelper::_CORBA_LongSeq_AliasHelper(CORBA_LongSeq*)(complete)[_ZN26_CORBA_LongSeq_AliasHelperC1EP13CORBA_LongSeq]
0x4000000000cb9680 T _CORBA_LongSeq_AliasHelper::_CORBA_LongSeq_AliasHelper(CORBA_TypeCode*)(complete)[_ZN26_CORBA_LongSeq_AliasHelperC1EP14CORBA_TypeCode]
0x4000000000c4a0c0 T _CORBA_LongSeq_AliasHelper::_CORBA_LongSeq_AliasHelper(CORBA_LongSeq const&)(complete)[_ZN26_CORBA_LongSeq_AliasHelperC1ERK13CORBA_LongSeq]
0x4000000000cb9600 T _CORBA_LongSeq_AliasHelper::_CORBA_LongSeq_AliasHelper(CORBA_LongSeq*)(base)[_ZN26_CORBA_LongSeq_AliasHelperC2EP13CORBA_LongSeq]
0x4000000000cb9ac0 T _CORBA_LongSeq_AliasHelper::_CORBA_LongSeq_AliasHelper(CORBA_TypeCode*)(base)[_ZN26_CORBA_LongSeq_AliasHelperC2EP14CORBA_TypeCode]
0x4000000000cb9580 T _CORBA_LongSeq_AliasHelper::_CORBA_LongSeq_AliasHelper(CORBA_LongSeq const&)(base)[_ZN26_CORBA_LongSeq_AliasHelperC2ERK13CORBA_LongSeq]
0x4000000000beb840 T _CORBA_LongSeq_AliasHelper::~_CORBA_LongSeq_AliasHelper()(deallocating)[_ZN26_CORBA_LongSeq_AliasHelperD0Ev]
0x4000000000beb440 T _CORBA_LongSeq_AliasHelper::~_CORBA_LongSeq_AliasHelper()(complete)[_ZN26_CORBA_LongSeq_AliasHelperD1Ev]
0x4000000000cb9b40 T _CORBA_LongSeq_AliasHelper::~_CORBA_LongSeq_AliasHelper()(base)[_ZN26_CORBA_LongSeq_AliasHelperD2Ev]
0x4000000000cb9320 T CORBA_LongSeq::get_buffer() const[_ZNK13CORBA_LongSeq10get_bufferEv]
0x4000000000cb9460 T CORBA_LongSeq::operator[](unsigned int) const[_ZNK13CORBA_LongSeqixEj]
0x4000000000cba420 T CORBA_LongSeq_var::operator[](unsigned int) const[_ZNK17CORBA_LongSeq_varixEj]
0x4000000000beaf80 T _CORBA_LongSeq_AliasHelper::write_value(VISostream&) const[_ZNK26_CORBA_LongSeq_AliasHelper11write_valueER10VISostream]
0x60000000000c4080 D type info of CORBA_LongSeq[_ZTI13CORBA_LongSeq]
0x60000000000c4160 D type info of _CORBA_LongSeq_AliasHelper[_ZTI26_CORBA_LongSeq_AliasHelper]
0x40000000004f18e0 D type info name of CORBA_LongSeq[_ZTS13CORBA_LongSeq]
0x40000000004f18f0 D type info name of _CORBA_LongSeq_AliasHelper[_ZTS26_CORBA_LongSeq_AliasHelper]
0x60000000000c4030 D virtual table of CORBA_LongSeq[_ZTV13CORBA_LongSeq]
0x60000000000c40b0 D virtual table of _CORBA_LongSeq_AliasHelper[_ZTV26_CORBA_LongSeq_AliasHelper]
0x40000000006e4c10 T thunk associated with VISDataInputStream::read_long_array(CORBA_LongSeq&,unsigned int,unsigned int)[_ZTv0_n328_N18VISDataInputStream15read_long_arrayER13CORBA_LongSeqjj]
0x40000000006e4000 T thunk associated with VISDataOutputStream::write_long_array(CORBA_LongSeq const&,unsigned int,unsigned int)[_ZTv0_n328_N19VISDataOutputStream16write_long_arrayERK13CORBA_LongSeqjj]
0x4000000000c4a5e0 T operator<<=(CORBA_Any&,CORBA_LongSeq*)[_ZlSR9CORBA_AnyP13CORBA_LongSeq]
0x4000000000c49a80 T operator<<=(CORBA_Any&,CORBA_LongSeq const&)[_ZlSR9CORBA_AnyRK13CORBA_LongSeq]
0x4000000000c49700 T operator<<(VISostream&,CORBA_LongSeq const*)[_ZlsR10VISostreamPK13CORBA_LongSeq]
0x4000000000c486a0 T operator<<(VISostream&,CORBA_LongSeq const&)[_ZlsR10VISostreamRK13CORBA_LongSeq]
0x4000000000c4c940 T operator<<(VISostream&,CORBA_LongSeq_var const&)[_ZlsR10VISostreamRK17CORBA_LongSeq_var]
0x4000000000c47e60 T operator<<(ostream&,CORBA_LongSeq const&)[_ZlsR7ostreamRK13CORBA_LongSeq]
0x4000000000c4ad20 T operator>>=(CORBA_Any const&,CORBA_LongSeq&)[_ZrSRK9CORBA_AnyR13CORBA_LongSeq]
0x4000000000c4bd20 T operator>>=(CORBA_Any const&,CORBA_LongSeq const*&)[_ZrSRK9CORBA_AnyRPK13CORBA_LongSeq]
0x4000000000c48b40 T operator>>(VISistream&,CORBA_LongSeq&)[_ZrsR10VISistreamR13CORBA_LongSeq]
0x4000000000c4cba0 T operator>>(VISistream&,CORBA_LongSeq_var&)[_ZrsR10VISistreamR17CORBA_LongSeq_var]
0x4000000000c49200 T operator>>(VISistream&,CORBA_LongSeq*&)[_ZrsR10VISistreamRP13CORBA_LongSeq]
0x4000000000c48800 T operator>>(istream&,CORBA_LongSeq&)[_ZrsR7istreamR13CORBA_LongSeq]
0x4000000000c48de0 T operator>>(istream&,CORBA_LongSeq*&)[_ZrsR7istreamRP13CORBA_LongSeq]

Also I gave the command nm -px *.so | c++filt -o | fgrep "CORBA_LongSeq::CORBA_LongSeq(unsigned long)" and nm -px *.a | c++filt -o | fgrep "CORBA_LongSeq::CORBA_LongSeq(unsigned long)" in /development0/rlp/VisiBroker/lib but the result was zero.

 

Also liborbcore64_r.so is not build by me. It has shipped along with Visibroker 8.0 library.

Only Main.o has been generated by me.

 

Kindly let me know what should be done next as CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete) is not present in shipped libraries.

 

Thanks

Regards

Amol.

 

Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>I tried command nm -px liborbcore64_r.so | c++filt -o | fgrep "CORBA_LongSeq" on liborbcore64_r.so library and output of the same was as below which does not has the pattern CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete)

 This means your headers for VisiBroker don't match your libs.

>I gave the command nm -px *.so | c++filt -o | fgrep "CORBA_LongSeq::CORBA_LongSeq(unsigned long)" and nm -px *.a | c++filt -o | fgrep "CORBA_LongSeq::CORBA_LongSeq(unsigned long)" in /development0/rlp/VisiBroker/lib but the result was zero.


>Also liborbcore64_r.so is not build by me. It has shipped along with Visibroker 8.0 library.


These are the libs from VisiBroker?

 

>Kindly let me know what should be done next as CORBA_LongSeq::CORBA_LongSeq(unsigned long)(complete) is not present in shipped libraries.

 

You need to get the matching headers to go with those shlibs.

Though I would need a copy of the headers and a .i file to make sure some evil macro or -D configuration option didn't do this.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Dennis,

 

In the include directory of Visibroker I found a file called cordef_c.hh which had the below statements (after executing command find . -name "*.hh" | xargs grep "CORBA_LongSeq("):

 

./cordef_c.hh:  CORBA_LongSeq(::CORBA::ULong _max = 0);
./cordef_c.hh:  CORBA_LongSeq(::CORBA::ULong max, ::CORBA::ULong length,
./cordef_c.hh:  CORBA_LongSeq(const CORBA_LongSeq&);
./cordef_c.hh:  virtual ~CORBA_LongSeq();


Kindly let me know what all files do your require inorder to investigate the same.

 

Thanks

Regards

Amol.

Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>a file called cordef_c.hh which had the below statements
./cordef_c.hh:  CORBA_LongSeq(::CORBA::ULong _max = 0);
./cordef_c.hh:  CORBA_LongSeq(::CORBA::ULong max, ::CORBA::ULong length,

 

It appears that ::CORBA::ULong is "unsigned int" (this seems broken) for those libs and unsigned long for you.

Where is ::CORBA::ULong defined?

 

>let me know what all files do your require in order to investigate the same.

 

As I said, I need a .i file from Main.cpp, created with "-E -.i" added to your existing options.

If you are worried about IP leakage, you can zip it up with a password and use PM to mail it to me.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Dennis,

 

Please check the attachment (zip file) and a PM send.

The link http://www.ime.usp.br/~reverbel/SOD-97/Manuais/vbrokerc++/prog_gd/noframes/chap11.htm

has a section named Primitive Data Types which mentions that "You should consult the include file orbtypes.h for an exact mapping of these primitive data types for your particular platform."

Kindly investigate and let me know your findings.

 

 

Thanks

Regards

Amol.

Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>The link has a section named Primitive Data Types which mentions that "You should consult the include file orbtypes.h for an exact mapping of these primitive data types

 

I only see uses of ULong, no definitions.  Looking at Main.i, I see the definition:

#line 64 "/development0/rlp/VisiBroker/include/ptypedef.h"
    typedef long                  Long;
    typedef unsigned long         ULong;

So I would need to see ptypedef.h to check for #if logic.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Dennis,

 

Please find attached zip file having ptypedef.h header file.

Password is same.

 

Thanks

Amol

Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>Please find attached zip file having ptypedef.h

 

Please edit your post and attach the file.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Have attached the zip file now.

 

Thanks

Amol.

Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>Have attached the zip file now.

 

From the choices ptypedef.h has, it appears you need to compile with: -DBITS64

You may want to search the documentation to see if this is mentioned.

 

If you get other unsats, we may have to pick another choice.

AmolPatel
Advisor
Solution

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Dennis,

 

Will see if compiling with -DBITS64 works or not and will update you on the same.

 

Thanks

Amol.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Dennis,

 

Thanks for the help. The solution provided helped me to remove the respective linker errors.

Also I need help on linker error warnings in module bin/ANTSUtilityServer. Below are the linker warnings:

 

aCC -ext -mt -Wl,+s +DD64  -L/RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release  -L/development0/rlp/xerces2.8/lib  -L/development0/rlp/VisiBroker/lib -L/oracle/g01/software/rdbms/10.2.0.5/lib   UtilityServer.o  -lfw  -lants_common_s  -lDb_ANTS  -lservice_lca_s  -lservice_csa_s  -lservice_mobile_code_s  -lservice_trunkgroup_s  -lservice_adc_s  -lants_utility_s  -lswitch_init_ui_s  -lwork_trunkgrouppayload_gen_c   -lwork_elementpayload_gen_c  -lwork_adcpayload_gen_c  -Wl,-a,shared -ldynany64_pr  -Wl,-a,shared -ldynany64_r  -Wl,-a,shared -lorbcore64_r  -Wl,-a,shared -lorbcore64_pr  -Wl,-a,shared -lcosnm64_pr  -Wl,-a,shared -lcosnm64_r  -Wl,-a,shared -lorb64_r  -Wl,-a,shared -lorb64_pr  -Wl,-a,shared -lfw64_r  -Wl,-a,shared -lfw64_pr  -Wl,-a,shared -ldsuser64_r  -Wl,-a,shared -ldsuser64_pr -Wl,-a,shared -ldbi  -Wl,-a,shared -lclntsh -Wl,-a,shared -lceg_mt -lpthread -lstream -o /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/bin/release/ANTSUtilityServer
ld: (Warning) Unsatisfied symbol "service::ServicePayload::insert(long,ants::common::TypeCode,ants::common::PayloadCategory,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,long,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructLcaNpaNxxModify(int,int,char const*,ceg::Referencer<service::lca::LcaNxx,ceg::ClearReference<service::lca::LcaNxx> >,int,int,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructNpaNxxForDelta(int,ceg::Referencer<service::lca::OrpsRoute,ceg::ClearReference<service::lca::OrpsRoute> >,int,int,char const*,int,int,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::SwitchPayload::insert(long,char const*,ants::common::TypeCode,std::basic_string<char,std::char_traits<char>,std::allocator<char> >)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructLcaNpaNxxAdd(int,char const*,ceg::Referencer<service::lca::LcaNxx,ceg::ClearReference<service::lca::LcaNxx> >,int,int,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructLcaNpaNxxDelete(service::SwitchPayload*,int,ceg::Referencer<service::lca::LcaNxx,ceg::ClearReference<service::lca::LcaNxx> >,int,int,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructLcaNpaModifyPayload(int,ceg::Referencer<service::lca::OrpsRoute,ceg::ClearReference<service::lca::OrpsRoute> >,int,int,int,bool,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
7 warnings.

 

For the same I have included the respective libraries in Makefile, however still I'm unable to remove the warnings.

Kindly let me know what is needed for referring the same.

 

Thanks once again for the same.

 

Regards

Amol.

 

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Hello Dennis,

 

I was able to rectify the below linker warnings from module bin/ANTSUtilityServer (from my previous post).

However I'm unable to remove linker warnings from module bin/ANTSSvcVwGuiServer. Below are the same:

aCC -ext -mt -Wl,+s +DD64  -L/RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release  -L/development0/rlp/xerces2.8/lib  -L/development0/rlp/VisiBroker/lib -L/oracle/g01/software/rdbms/10.2.0.5/lib   SvcVwGuiServer.o  -lfw  -lants_common_s  -lDb_ANTS  -lants_trunkgroup_s  -lants_adc_s  -lswitch_init_ui_s  -lants_lca_ui_s  -lants_mobile_code_s  -lants_verify_s  -lants_lca_s  -lwork_elementpayload_gen_c  -lservice_s  -lservice_lca_s  -lservice_mobile_code_s  -Wl,-a,shared -ldynany64_pr  -Wl,-a,shared -ldynany64_r  -Wl,-a,shared -lorbcore64_r  -Wl,-a,shared -lorbcore64_pr  -Wl,-a,shared -lcosnm64_pr  -Wl,-a,shared -lcosnm64_r  -Wl,-a,shared -lorb64_r  -Wl,-a,shared -lorb64_pr  -Wl,-a,shared -lfw64_r  -Wl,-a,shared -lfw64_pr  -Wl,-a,shared -ldsuser64_r  -Wl,-a,shared -ldsuser64_pr -Wl,-a,shared -ldbi  -Wl,-a,shared -lclntsh -Wl,-a,shared -lceg_mt -lpthread -lstream -o /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/bin/release/ANTSSvcVwGuiServer
ld: (Warning) Unsatisfied symbol "service::ServicePayload::insert(long,ants::common::TypeCode,ants::common::PayloadCategory,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,long,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructLcaNpaNxxModify(int,int,char const*,ceg::Referencer<service::lca::LcaNxx,ceg::ClearReference<service::lca::LcaNxx> >,int,int,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructNpaNxxForDelta(int,ceg::Referencer<service::lca::OrpsRoute,ceg::ClearReference<service::lca::OrpsRoute> >,int,int,char const*,int,int,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::SwitchPayload::insert(long,char const*,ants::common::TypeCode,std::basic_string<char,std::char_traits<char>,std::allocator<char> >)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructLcaNpaNxxAdd(int,char const*,ceg::Referencer<service::lca::LcaNxx,ceg::ClearReference<service::lca::LcaNxx> >,int,int,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructLcaNpaNxxDelete(service::SwitchPayload*,int,ceg::Referencer<service::lca::LcaNxx,ceg::ClearReference<service::lca::LcaNxx> >,int,int,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
ld: (Warning) Unsatisfied symbol "service::lca::backflow::LcaPayloadPersistenceMgr::reconstructLcaNpaModifyPayload(int,ceg::Referencer<service::lca::OrpsRoute,ceg::ClearReference<service::lca::OrpsRoute> >,int,int,int,bool,bool)" in file /RLP/DEV/TEST_PJ005710_ph171234/ANTS/RLP_source_server/lib/release/libservice_lca_s.so
7 warnings.

 

Kindly help me out on the same as I'm unable to figure out the cause.

 

Thanks

Regards

Amol.

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Dennis,

 

I was able to remove linker warnings as mentioned in my earlier post.

 

Thanks

Regards

Amol.

Dennis Handly
Acclaimed Contributor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

>I was able to remove linker warnings as mentioned in my earlier post.

 

Great.  So no warnings/errors at link time?

AmolPatel
Advisor

Re: Linker Error in a module "ld: Unsatisfied symbol "CORBA_LongSeq"

Dennis,

 

Now there are no warnings during link time.

 

Regards

Amol.