Debugging threads with HP Wilde Beest
To explicitly preload the librtc runtime library and start the target
application, enter one of the following commands:
— For 32 bit IPF applications,
LD_PRELOAD=/opt/langtools/lib/hpux32/librtc.so
<executable>
— For 64 bit IPF applications,
LD_PRELOAD=/opt/langtools/lib/hpux64/librtc.so
<executable>
— For 64-bit PA applications,
LD_PRELOAD=/opt/langtools/lib/pa20_64/librtc.sl
<executable>
If LD_PRELOAD and chatr +rtc are used to preload the librtc runtime
library, the librtc runtime library is loaded from the path specified by
LD_PRELOAD.
If HP WDB detects any thread error condition during the application run, the error log
is output to a file in the current working directory.
The output file has the following naming convention:
<executablename>.<pid>.threads
where pid is the process id.
Limitations in Batch Mode of Thread Debugging
The feature does not obtain the thread-error information in batch mode for forked
process in a multiprocessing application. However, if the librtc.sl library is
preloaded, the debugger obtains the thread-error information in the batch mode for
exec-ed application.
You cannot specify an alternate output directory for the thread-error log. The
thread-error log file is output into the current working directory only.
HP WDB cannot execute both batch mode thread check and batch mode heap check
together. If the rtcconfig file has both entries, then batch heap check overrides the batch
thread check.
Known issues with thread debugging for interactive and batch mode
Issue 1:
During the execution of advanced thread checking for applications that fork, in the
interactive mode, the following message appears if the GDB follows the child:
Pthread analysis file missing!
40