Tru64 Managers:
Thanks for the many responses.
The issue was resolved by installing the C++ Runtime from:
ftp://ftp.compaq.com/pub/products/c-cxx/tru64/cxx/CXXREDIST632V18.tar
For what it's worth, the extracts of other suggestions are shown below.
Robert
...............................................................
I had the same problem with Apache and some libssl.so, solved by adding path
to the right version of library to $LD_LIBRARY_PATH, so check the variable
and make sure it points to the right version.
...............................................................
Your application has been compiled with 6.3 and it most likely won't work
with older libraries anyway. If it uses even one virtual function, you'll
get errors like "undefined symbol
__vtbl___jaldsj21341jljalj_uwr1212hfsdh___, make sure first noninlined
member function of XXX is defined".
... download it from ftp.compaq.com/pub/products/C-CXX. Licenses may have
to get upgraded, though, or the compiler may not work. I would go directly
to CXX6.5 instead, the library with it works with older versions (at least
for me).
Then you also have to make sure your applications loads the libcxx.so
delivered with the compiler, not the one with the system. The compiler
places its libraries at /usr/cmplrs/... somewhere, so adjust LD_LIBRARY_PATH
or make a symlink to the library so, that your application doesn't load
/usr/shlib/libcxx.so before it finds the correctly library. You may also
have to actually create the library from libcxx.a, if it isn't there already
(use ld -shared -all -expect_unresolved \* -msym -update_registry
/shlib/so_locations -set_version "cxx6.3" libcxx.a -o libcxx.so). Easy with
c++, isn't it ;>.
...............................................................
On the associated products list you should find the Shareable C++ Run Time
Libraries, Install these and the errors should go away.
...............................................................
Sounds like the vendor linked against 6.3 of the C++ runtime
libraries, while you have 6.2. This raises the question of
what version of the operating system the vendor was using.
The C++ libraries are included on one of the Associated
Products CDROMs. If you have 6.2, it is because that's what
was included with your version of the OS. If the vendor
used 6.3, then it may mean that they have a different version
of the OS as well. That may cause more compatability problems
than the two versions of RTL.
The current C++ compiler kit will probably have the more
recent run-time. If you get the Software Product Library
you may be able to install the newer run-time from there.
Or, track down the OS version Associate Products that has
the newer version. Be careful not to upgrade anything else.
...............................................................
-----Original Message-----
Sent: Tuesday, February 12, 2002 1:32 PM
To: Tru64 Unix Managers
Subject: C++ on Tru64
I installed a commercial application and it won't run. (I can't rebuild the
software.)
===========================================================================
Error message: 1018922:/opt/Fluent.Inc/fluent6.0/cortex/alpha/cortex.3.4.6:
/sbin/loader: Fatal Error: object libcxx.so from liblist in
/opt/Fluent.Inc/fluent6.0/cortex/alpha/cortex.3.4.6 has version "cxx6.3",
which does not match the found object: /usr/shlib/libcxx.so (with version
"_null")
===========================================================================
I have CXX62 installed on the system.
CXXBASE620 installed Compaq C++ Version 6.2 for Tru64
UNIX
Would you suppose this error means I need to upgrade to version 6.3 ?
Is CXX 6.3 (or maybe just the 6.3 runtime library) available for download?
Environment:
Tru64/TruCluster 5.1, patch kit 4
Hardware: Two ES40 systems
Received on Wed Feb 13 2002 - 20:43:26 NZDT