1833780 Members
2448 Online
110063 Solutions
New Discussion

Re: aCC for 64 bit

 
Thiagu_1
Advisor

aCC for 64 bit

I am using HP-UX B11.11 PA-RISC(2.0)to build my applications.

The version of my aCC compiler is showing as
aCC -V : aCC: HP ANSI C++ B3910B A.03.65

file /opt/aCC/bin/aCC. It's shown as
/opt/aCC/bin/aCC: PA-RISC1.1 shared executable dynamically linked


But my machine is PA-RISC 2.0 . Is it ok if i use that compiler for building my applications in 64 bit by adding +DA2.0W option?

Also /usr/ccs/bin/ld also showing as PA-RISC 1.1 shared executable. please suggest me a solution on this?



9 REPLIES 9
Steven E. Protter
Exalted Contributor

Re: aCC for 64 bit

Shalom,

Interesting fact that the aCC compiler was not updated to PA-RISC 2.0. It doesn't mattter. You can clearly use it to build PA-RISC 2.0 applications and 64 bit applications. I think the only requirement is that the system you are compiling on be 64 bit and I'm not even sure if that is necessary.

Its kind of a chicken or the egg deal. You're asking how can I compile a 64 bit PA-RISC 2.0 application on a tool that is PA-RISC 1.1 (which supports 64 bit). The first PA-RISC 2.0 application was undoubtedly compiled on a previous compiler.

So my advice is compile to your hearts content and take this into account if you run into trouble unit testing.

In this matter it would be helpful to know if you are on 32 bit or 64 bit hardware. Testing may be difficult with certain compilers on a 32 bit OS install.

model

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Piergiacomo Perini
Trusted Contributor

Re: aCC for 64 bit

Hi Thiagu,

maybe you can try to compile with â +DAportableâ option (if your aCC support this).

my 2 cent
best regards
pg
H.Merijn Brand (procura
Honored Contributor

Re: aCC for 64 bit

And please use +DD64 instead of +DA2.0w for future compatability. It means the same, but is more widely recognized.

Enjoy, Have FUN! H.Merijn
Enjoy, Have FUN! H.Merijn
Piergiacomo Perini
Trusted Contributor

Re: aCC for 64 bit

Hi Thiagu,

maybe you can try to compile with
  +DAportable
option (if your aCC support this).

my 2 cent
best regards
pg
Thiagu_1
Advisor

Re: aCC for 64 bit

we are using HP-UX 11.11 PA-RISC 2.0 for building my applications.

when i am linking i am getting Failure Updating message for the output exe. we tried to trace the ld call by using tusc utility and found that it fails with ENOMEM in the brk call..

I am attaching my traced output of ld. But that is bigger size file so I am giving you the cut and copied file
Don Morris_1
Honored Contributor

Re: aCC for 64 bit

From your other thread "Link error: Failure updating exe", you show a maxdsiz of 262144 pages [1073741824 bytes].

From your tusc output, your heap started below 0x527000 [the brk() call on 56 ups it to that address].

The failing brk() call on line 147 [minus all your snips] is trying to set the end of the heap at 0x4d5f2240 (up into q1) from the previous successful brk(0x3d5f2240).. so you're jumping from q0 to q1... but much more importantly 0x4d5f2240 - 0x527000 = 0x4d0cb240 or 1292677696 bytes.. which is obviously greater than 1073741824.

You're bumping maxdsiz, raise it. (Given that this looks like a normal EXEC_MAGIC layout (the end of the private address space from the MAP_PRIVATE mmaps is up around 0x80000000.. they're getting put just before the process stack/thread stacks), anything over 2Gb would be overkill for this process.
Thiagu_1
Advisor

Re: aCC for 64 bit

Hi,

The below is the configuration shown in SAM. Can we bumpup the maxdsiz to 2147483648 ?
maxdsiz 1073741824 1073741824
maxdsiz_64bit 2147483648 2147483648
Don Morris_1
Honored Contributor

Re: aCC for 64 bit

Yes, you said you were running 11.11 -- so in your case use kmtune or SAM to set the value to 2Gb.

See http://docs.hp.com/en/TKP-90202/re34.html for more details on maxdsiz.
Dennis Handly
Acclaimed Contributor

Re: aCC for 64 bit

Why are you using file(1) on the driver? You need to do it on ctcom*.

>Is it ok if i use that compiler for building my

Why would you think there is a problem?

>Also /usr/ccs/bin/ld also showing as PA-RISC 1.1

Again, why are you looking at things that don't matter?

>SEP: Interesting fact that the aCC compiler was not updated to PA-RISC 2.0.

You are imagining things. ;-)
Shipping a PA2.0 compiler might require not supporting PA1.1.

>I think the only requirement is that the system you are compiling on be 64 bit and I'm not even sure if that is necessary.

Right, not necessary.

>pg: maybe you can try to compile with +DAportable option

Why?, clearly Thiagu wants a 64 bit application.

>procura: And please use +DD64

Right.

>I am attaching my traced output of ld. But that is bigger size file so I am giving you the cut and copied file

Next time, you need to send in a tusc -fp trace. This error comes from pxdb64, not ld.

>Don: You're bumping maxdsiz, raise it. (Given that this looks like a normal EXEC_MAGIC layout

Right.