Operating System - Linux
1753994 Members
7263 Online
108811 Solutions
New Discussion юеВ

Re: 11.23 migration - Unsatisfied Symbols: HPPACCVAD

 
sathis kumar
Frequent Advisor

11V2 migration - Unsatisfied Symbols : HPPACCVAD


Currently we are working on migrating our applications from HP-UX 11i to HP-UX 11V2.

1) We are getting unsatisfied symbols while trying to compile/link our application in UNIX 11V2. It does not give any error message when we do it in UNIX 11i version.

When we exeucte the following query on UNIX 11i version,

for i in `ls /lib/*.a /usr/lib/*.a /usr/lib/hpux32/*.a`
do
nm $i | grep HPPACCVAD&& echo $i
done

We get the following output:

nm: /lib/libbomb.a: cannot open
HPPACCVAD | 112|extern|entry |$CODE$
/lib/libcl.a
nm: /usr/lib/libbomb.a: cannot open
HPPACCVAD | 112|extern|entry |$CODE$
/usr/lib/libcl.a

From this, we can understand that the implementation of function 'HPPACCVAD' is been done in library 'libcl.a'.

We tried the same query in UNIX 11V2 and we are unable to find the implementation of function 'HPPACCVAD' in any library file. Could you please let us know which library has the implementation of function 'HPPACCVAD' ?

2)Also, about the shared library usage, in HP-UX 11i, we refer those libraries with .sl extension. But, in 11V2, we believe it has to be referred with .so extension. Could you please correct me if this is wrong?

3)We use 'nm' command to see the symbols of an object file(.o)/library file(.a or .sl) in HP-UX 11i. But, if we use 'nm' to see the symbols of an .so file ( in HP-UX 11V2 ), the contents are not correct. Could you please let us know which command we have to use to see the symbols of .so file in 11V2 ?

6 REPLIES 6
Dennis Handly
Acclaimed Contributor

Re: 11.23 migration - Unsatisfied Symbols: HPPACCVAD

>HP-UX 11V2.

This is a imprecise term. Did you mean you are on Integrity?

>we can understand that the implementation of function 'HPPACCVAD' is been done in library libcl.a.

Yes, HPPAC is in libcl for PA only. These are functions ported from MPE/iX. And have since been removed on IPF.

>in 11V2, we believe it has to be referred with .so extension.

Yes, on IPF, you should use .so.

>if we use 'nm' to see the symbols of an .so file, the contents are not correct.

nm(1) should work on shared libs, unless a tricky person made them and hid or stripped symbols. Then you use:
$ elfdump -n .dynsym -s

What do you mean by "not correct"?

sathis kumar
Frequent Advisor

Re: 11V2 migration - Unsatisfied Symbols : HPPACCVAD


Hello,

From your reply, we believe that there is no library having the implemenation of 'HPPACCVAD' in 11V2 version. If not, could you please let me know the library file which has the implementation so that we can use that library to create our executable without any issues?

Thanks in advance
Sathish
Matti_Kurkela
Honored Contributor

Re: 11V2 migration - Unsatisfied Symbols : HPPACCVAD

You did not mention the name of the programming language you're using. Is it FORTRAN? If so, I think it would be important to know which version of FORTRAN are you using: FORTRAN 77, Fortran 90/95 or something else?

If I understood Dennis correctly, there is *no* implementation of "HPPACCVAD" in 11v2 on Itanium platform *at all*.

You should change the source code of your program to use a more modern API that does the same thing. This old MPE/iX API is gone.

A quick Google search produced this documentation for HPPACCVAD:

http://docs.hp.com/cgi-bin/doc3k/B3265090029.10455/78

Looks like it's just a function to convert numbers in ASCII strings into another storage format. Even re-implementing that (if there is no other way) should not be a huge problem.

MK
MK
Dennis Handly
Acclaimed Contributor

Re: 11.23 migration - Unsatisfied Symbols: HPPACCVAD

>we believe that there is no library having the implementation of 'HPPACCVAD' in 11V2 version.

That is correct. HPPAC was not ported to Integrity. (Again, this has nothing to do with 11v2.)

Dennis Handly
Acclaimed Contributor

Re: 11.23 migration - Unsatisfied Symbols: HPPACCVAD

>MK: If I understood Dennis correctly, there is *no* implementation of "HPPACCVAD" in 11v2 on Integrity platform *at all*.

Right. CVAD is a port of the HP3000 (16 bit) machine instruction, that COBOLII used. Over 3 architectures + OSs obsolete.

It was never used in COBOLII/iX and was only other languages.

>Looks like it's just a function to convert numbers in ASCII strings into another storage format. Even re-implementing that should not be a huge problem.

Right it just does nibble packing and range checking.

Dennis Handly
Acclaimed Contributor

Re: 11.23 migration - Unsatisfied Symbols: HPPACCVAD

libhppac.so.1 will be added to 11.23 in a future patch: PHSS_37041

And 11.31: PHSS_37042