Operating System - HP-UX
1753408 Members
7296 Online
108793 Solutions
New Discussion юеВ

Re: Usage -AA compile option on HPUX PA & IA.

 
SOLVED
Go to solution
Srikrishna Erra
Advisor

Usage -AA compile option on HPUX PA & IA.

Our product (combinations C & C++ source code) uses -AA during compilation of C++ source and links with Rogue Wave Standard C++ Library 2.2.1 (libstd_v2).

We have C++ applications which tries to link with our product's libraries and calls most of our APIs.

I got below info from HP manual,

"The standard features enabled by -AA are incompatible with the older Rogue Wave Standard C++ Library 1.2.1 and Tools.h++ 7.0.6. All modules must be consistent in using -AA. Mixing modules compiled with -AA with ones that are not is not supported. "

Could you please clarify "If our C++ applications does't use -AA then there will be any issues?".
From above manual, it seems there will be issues and applications must use -AA, must link with libstd_v2. Right?

Also we have C applications which links with our libraries and calls our product's APIs
They don't require usage of -AA.
Will there be any issues in this case.

Please let me know.

Thanks

regards,
Srikrishna Erra.
3 REPLIES 3
Dennis Handly
Acclaimed Contributor
Solution

Re: Usage -AA compile option on HPUX PA & IA.

What version of aC++ are you using? Is this PA or Integrity?

>"If our C++ applications doesn't use -AA then there will be any issues?".

The default on PA is -AP, so you may have problems. On Integrity, the default is -AA, so you won't.

>it seems there will be issues and applications must use -AA, must link with libstd_v2. Right?

Yes.

>we have C applications which links with our libraries and calls our product's APIs
>They don't require usage of -AA.  Will there be any issues in this case?

You don't need -AA but you need to make sure the aC++ runtime is either linked into your executable (use aCC -AA to link), or you follow the directions for linking with aC++:
http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/Online_Help/distributing.htm#linking

(And similar for PA.)

Srikrishna Erra
Advisor

Re: Usage -AA compile option on HPUX PA & IA.

>>What version of aC++ are you using? Is this PA or Integrity?
We have both PA & IA.

IA: aCC: HP aC++/ANSI C B3910B A.05.50 [Jan 06 2003]

PA: aCC: HP ANSI C++ B3910B A.03.50

On PA, Our product has -lstd_v2 -lCsup_v2 in the link line.

On IA, has -lstd_v2 -lCsup in the link line.


>>The default on PA is -AP, so you may have problems. On Integrity, the default is -AA, so you won't.

So you mean to say,
On PA, C++ applications need to have -AA and use -lstd_v2 -lCsup_v2 linker options while linking with our product libraries as they are built with -AA.

On IA, C++ applications are not required to have -AA as default on IA is -AA.



Our C applications don't use -AA during compiling but uses below linker options
On PA, -lstream -lCsup
On IA, -lstd_v2 -lCsup
Is that enough for C applications?

Thanks

regards,
Srikrishna Erra.
Dennis Handly
Acclaimed Contributor

Re: Usage -AA compile option on HPUX PA & IA.

>IA: A.05.50 [Jan 06 2003]

This version isn't supported. The latest is A.06.25.01.

>PA: aCC: HP ANSI C++ B3910B A.03.50

This is pretty old too.

>Our product has -lstd_v2 -lCsup_v2 in the link line.
>On IA, has -lstd_v2 -lCsup in the link line.

If you are linking executables with aCC, you shouldn't need to add those.

>So you mean to say, On PA, C++ applications need to have -AA and use -lstd_v2 -lCsup_v2 linker options while linking with our product libraries as they are built with -AA.

Well, just link with -AA.

>On IA, C++ applications are not required to have -AA as default on IA is -AA.

It is still a good idea to have -AA.

>Our C applications don't use -AA during compiling but uses below linker options
>On PA, -lstream -lCsup

Ack! These are -AP libs and you can't mix with -AA.

>On IA, -lstd_v2 -lCsup
>Is that enough for C applications?

(You are missing -lunwind and -lm.)
Or just link with aCC.