[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference turris::c_plus_plus

Title:C++
Notice:Read 1.* and use keywords (e.g. SHOW KEY/FULL KIT_CXX_VAX_VMS)
Moderator:DECCXX::AMARTIN
Created:Fri Nov 06 1987
Last Modified:Thu Jun 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:3604
Total number of notes:18242

3241.0. "again Unresolved: __cxx_gem_dispatch !! 5.4 && 3.2" by LATINA::ARANCHA (MCS Madrid) Wed Sep 11 1996 12:35

T.RTitleUserPersonal
Name
DateLines
3241.1Mixing V3.2 and V4.0 compiles?WRKSYS::GIANOSThu Sep 12 1996 00:529
3241.2more informationLATINA::ARANCHAMCS MadridThu Sep 12 1996 04:389
3241.3CXXSHR307TAEC::FLAUWMarc Flauw, TeMIP Technical Office, VBOThu Sep 12 1996 08:208
3241.4Need CXXSHRDA307DECCXX::MITCHELLThu Sep 12 1996 10:045
3241.5HAd installed CXXSHRDA307LATINA::ARANCHAMCS MadridThu Sep 12 1996 10:575
3241.6More info neededDECCXX::MITCHELLThu Sep 12 1996 15:298
3241.7#setld -i | grep CXXSHRDALATINA::PEDROAMCS MadridTue Sep 17 1996 06:2314
3241.8more info neededDECCXX::MITCHELLWed Sep 18 1996 10:057
3241.9Unresolved __cxx_gem_dispatch on other systems...HERO::COUNOTTEThu Mar 27 1997 11:4956
Hello All,

We develop an application on a V3.2D system and use it on other
V3.2 systems.

Recently I installed C++ V5.3 to solve problems with Third Degree,
we were then able to solve memory leaks.

But then, our executable did not work any more on other systems,
starting one of these has the following results :

# namon_server
1516:namon_server: /sbin/loader: Error: unresolvable symbol in namon_server: __cxx_gem_dispatch
1516:namon_server: /sbin/loader: Fatal Error: this executable has unresolvable symbols

Even worse, the libdecnet_stub.so against which we link the namon_server file doesn't
seems to work anymore ? Because when linking with decnet.so, everything is fine.

Can you help ?


The only solution we found, was to link statically the executable, which worked fine except
for the libdecnet_stub library. But then we face another problem : We have to provide a
shareable library ! How can we link it so that we can distribute executable using it as
a shared library ?


Thanks in advance for your help.


Regards,
Cedric.

PS : 


Here is information from the systems we use :

Development system:
# setld -i | grep CXX
 (I removed any uninstalled kits)
ATMCXXSHLIB350  installed       C++ Shared Libraries for Atom (Software Development)
CXXBASE530      installed       DEC C++ (cxx) for Digital UNIX
CXXHDRA132      installed       DEC C++ headers for DEC OSF/1 AXP Systems
CXXILDA132      installed       DEC Incremental linker (ild)
CXXLIB530       installed       DEC C++ static class libraries
CXXMAN530       installed       DEC C++ and class library manual pages
CXXOLDA510      installed       DEC C++ old packages: oldc89 and ild
CXXSHRDA307     installed       DEC C++ Class Library, Run-Time Support
CXXTASKA132     installed       DEC C++ task library
CXXV3HDR530     installed       DEC C++ header files for Digital UNIX V3.x


Test system:
migbin# setld -i | grep CXX
CXXSHRDA305     installed       DEC C++ shared libraries
3241.10Look in /usr/lib/cmplrs/cxx/libcxx.soDECC::SULLIVANJeff SullivanThu Mar 27 1997 12:4520
I tried this on our V3.2 system, which does not have the problem described:

% nm /usr/lib/cmplrs/cxx/libcxx.so | grep cxx_gem_dispatch
__cxx_gem_dispatch               | 0004395929625760 | T | 0000000000000008

% nm /usr/lib/cmplrs/cxx/libcxx.a | grep cxx_gem_dispatch
__cxx_gem_dispatch               | 0000000000004496 | T | 0000000000000008

You should see it in both the static and the shared library.


It is possible that one of the other subsets (ATMCXXSHLIB350, for example) may
have overwritten the original libcxx.so.

I believe that if CXXSHRDA307 is installed, you should be able to build shared
executables using DEC C++ V5.3 and later on Digital UNIX V3.2.

Post more info or send me mail, if you are still having problems.

-Jeff
3241.11Installed CXXSHRDA307 which fixed the problem...HERO::COUNOTTEMon Mar 31 1997 08:0210
Thanks for your reply.

Re. 10

Does that means that the shared executable I built will work on any V3.2
systems with or without CXXSHRDA307 (with previous versions) ?

Regards,
Cerdric.
3241.12CXXSHRDA307 is required for running programs compiled with V5.3 or laterDECCXX::MITCHELLMon Mar 31 1997 11:123
If you compile with V5.3 or later, you need to have
CXXSHRDA307 installed on the target system in order
to run the program on it.
3241.13More infoDECCXX::MITCHELLMon Mar 31 1997 11:2119
          The CXXSHRDA307 subset on the DEC C++ Version 5.5 kit
          includes updated run-time sharable libraries (the RTLs).
          This subset must be installed to use DEC C++ Version 5.5
          on Digital UNIX Version 3.n systems. Executables that
          are linked with the -call_shared command line option
          (the default) and that contain code generated by DEC C++
          Version 5.5 can only be run on Digital UNIX Version 3.n
          systems on which CXXSHRDA307 or a later version has been
          installed.

          If you want to run C++ programs on other Digital UNIX
          Version 3.n systems, you can link specifying cxx -non_
          shared. Programs linked in this manner can be run on
          other systems that do not have CXXSHRDA307 or later
          installed.

          The CXXSHRDA307 subset can be restributed under
          conditions stated in the Software Product Description.
3241.14CXXSHRDA307 Free ? SPD ?HERO::COUNOTTETue Apr 01 1997 04:288
Many thanks for the information.

I understood, reading previous replies that this software was free ?
Otherwise, where can I find the SPD ?

Regards,
Cedric.
3241.15DECCXX::MITCHELLTue Apr 01 1997 12:098
There is no charge for restributing CXXSHRDA307.

You can find the SPD via:

http://tlg-www.zko.dec.com/public/cxxc/dcxxc-kits.html

CXXSHRDA307 is only needed for Digital UNIX versions
prior to V4.0.
3241.16Thanks.HERO::COUNOTTEThu Apr 03 1997 07:227
Thanks a lot.

You were very helpful.

Regards,
Cedric.