Operating System - HP-UX
1832247 Members
2336 Online
110041 Solutions
New Discussion

Problem running Purify on hp-ux 11.0

 
Paresh Borkar
Occasional Advisor

Problem running Purify on hp-ux 11.0

Hi,

We are having a problem running purify on our hp-ux machine. We have written a hello world program, which we try to purify. When we run "purify aCC +z hw.cpp", purfiy instruments the file. But when we run a.out, it just crashes.
Following is the error dump in the purify window:

Purify instrumented ./a.out (pid 14176 at Fri Oct 5 11:50:31 2001)
Purify 2001a.04.00 HP-UX (32-bit) Copyright (C) 1992-2001 Rational Software Corp. All rights reserved.
For contact information type: "purify -help"
For TTY output, use the option "-windows=no"
Command-line: ./a.out
Options settings: -purify -purify-home=/home/paresh/purify/releases/purify.hp.2001a.04.00 -dynamic-linker=/usr/lib/aCC/dld.sl
License successfully checked out.

MSE: Memory segment error
This is occurring while in:
*unknown func* [pc=0xc1fc81cc]
*unknown func* [pc=0xc1fc7824]
*unknown func* [pc=0xc1fa7304]
*unknown func* [pc=0xc1fa4ec0]
__mAp_dLd [crt0.o]
__map_dld [rtlib.o]
Accessing a memory range that crosses a memory segment boundary.
Addressing 0xbab6408c for 4 bytes ending at 0xbab64090, which is neither in the heap nor the main stack.

COR: Fatal core dump
This is occurring while in:
*unknown func* [pc=0xc1fc81cc]
*unknown func* [pc=0xc1fc7824]
*unknown func* [pc=0xc1fa7304]
*unknown func* [pc=0xc1fa4ec0]
__mAp_dLd [crt0.o]
__map_dld [rtlib.o]
Received signal 11 (SIGSEGV - Segmentation fault)
Handler function: SIG_DFL
Faulting address = 0xbab6408c
Signal mask: (SIGHUP | SIGINT | SIGILL | SIGTRAP | SIGABRT | SIGEMT | SIGFPE | SIGBUS | SIGSEGV | SIGSYS | SIGPIPE | SIGALRM | SIGTERM | SIGUSR1 | SIGUSR2 | SIGVTALRM | SIGLOST | SIGXCPU | SIGXFSZ)
Pending signals:


Now when we link a.out only with static versions of the standard libraries while purifying with "purify +A +z hw.cpp", then purified version of a.out runs fine.

Seems like there is a problem if the application being purified is using shared libraries. Has anyone encountered a similar problem?

Thanks in advance.

Regards,
Paresh.
4 REPLIES 4
Jerry Zhang
Frequent Advisor

Re: Problem running Purify on hp-ux 11.0

Make sure the environment variable "LD_LIBRARY_PATH" is defined and pointed to the libraries you are linking.
Paresh Borkar
Occasional Advisor

Re: Problem running Purify on hp-ux 11.0

Hi,

Since we are using 32-bit purify, I tried setting SHLIB_PATH. I am not using any shared libraries other than system ones. So, I set SHLIB_PATH to /usr/lib. However, the purified a.out is still giving the same problems.

(Apparently looks like purify is having run-time problems handling the dynamic runtime loader (dld.sl)).

Please advise.

Thanks,
Paresh.
Frederic Soriano
Honored Contributor

Re: Problem running Purify on hp-ux 11.0

Hi Paresh,

I had the same problem with Purify v2001 (same minor and patchlevel revisions).

Updating Purify to v2002.05.00 resolved all our problems here. You can get the latest release from Rational at the following URL (provided you have a valid maintenance contract):
http://www.rational.com/support/downloadcenter/upgrades/purify.jsp

I hope this helps!

Best regards,
Fred
Bojan Lozinsek_1
New Member

Re: Problem running Purify on hp-ux 11.0

It looks like the problem we had.

Make sure that no other program is using the same library, clear purify's cache and then rebuild the code.

In our case some agent has been using the same library (original, not yet instrumented). And when we tried to run a program, instrumented library could not be loaded.

Regards,
Bojan
Future belongs to people, who see the possibilities before they become obvious