|
Dear Charlie,
I refer to a note from last summer by Glenn Joyce of the FUSE team
(see below). He claims that ECO release 3.2-15 of DEC Ada solved some
of the debugging problems that my customer was having.
1: Can I at least assume that these fixes made it into DEC Ada
3.3?
2: Can I get 3.2-15 for the customer for DEC UNIX versions
below 3.2G (i.e. not supported by DEC Ada V3.3) ?
Thanks
-pb
================================================================================
Note 1202.3 Problems debugging Ada with ladebug 3 of 5
UHUH::JOYCE "Glenn Joyce" 87 lines 26-JUL-1996 16:31
--------------------------------------------------------------------------------
-< Need Ada V3.2-15 to correct the problem >-
I had a chance to perform some investigation in to this problem
and here is what I found:
When any program Ada program is compiled with Ada V3.2-5
or V3.2-13 (the Ada ECO release), Ladebug is unable to display source
when the program is started. Through work with Charlie McCutcheon,
I've been able to determine that there is a missing -g flag which
did not get passed to the C compiler when the elaboration package
was linked in to the user program. Hence the debugging info is
not available, even if the user specified -g on the Ada command line.
This problem is fixed in Ada version V3.2-15. See the details at
the end of this note for information on how to obtain that version
of the compiler.
The problem about the breakpoint toggles not showing up in the source
is has a deeper cause. I have an idea that it might be realated
to the fact that the information available to the debugger after
task elaboration is different than the pre-elaboration info.
I can suggest a work-around for this promblem. The workaround is
to establish a breakpoint in the user program that will be encountered
after elaboration. Run the program and after the breakpoint that you
have set has been encountered, it's possbile to bring up use the
Browse Source... entry on the File pulldown to navigate through the source
and set breakpoints. Do not bring up the source browser before Ada
elaboration has occurred! This is the bug in the Ladebug GUI.
I realize that this is not the most elegant solution, but with a small
amount of inconvenience now, the debugger does work reliably.
As an example of what I mean, here is what I would do in the sample
program try that is in .0:
$ dxladebug try
(ladebug) stop in try
(ladebug) continue
.
.
.
Now, the breakpoint in the function try triggers
File->Browse Source...
Use the source browser as documented in the Ladebug manual. Source
with breakpoints should appear correctly.
I will put this matter down as a problem to be investigated for a
future release
Instructions to obtain the Ada V3.2-15 kit:
-------------------------------------------
Upgrading to Ada V3.2-15 requires several steps.
First, install the Ada V3.2-5 kit, if you have not already done so.
Next, install the ADA 3.2 ECO kit. This kit can be found on exrad.zko.dec.com.
Using anonymous FTP, copy ADAECO320.tar from /public/ADAECO320. Unpack
this tar file in it's own directory and the use setld to install it. At this
point, Ada V3.2-13 will be installed on your system.
Finally, you will have to copy two files which contain updated acs and adacom
images and copy the binary files to their correct location on your system.
Using anonymous FTP, connect to exrad.zko.dec.com and cd to the directory
/public/ADA320. Copy the following files:
acs.v32-15.tar.Z
adacom.v32-15.tar.Z
Each of these compressed tar files contains one file. acs.v32-15.tar.Z contains
the acs binary and adacom.v32-15.tar.Z contains the adacom binary. Uncompress
each tar file and the extract the contents as follows:
zcat adacom.v32-15.tar.Z | tar xvf -
zcat acs.v32.tar.Z | tar xvf -
You will now have a file called adacom and a file called acs in your directory.
You may now copy these files to the directory /usr/lib/cmplrs/ada/bin, taking
care to make sure that the ownership and file protections are the same as the
old versions of these files in /usr/lib/cmplrs/ada/bin before you copied the
new images over.
At this point, you are now running a V3.2-15 Ada compiler. Recompiler your
programs
to be debugged with the updated compiler and the debugger should be able to
display source when it's invoked to debug the user program.
Glennj
|
| > 1: Can I at least assume that these fixes made it into DEC Ada
> 3.3?
Yes, all fixes from the V3.2 stream are in V3.3.
> 2: Can I get 3.2-15 for the customer for DEC UNIX versions
> below 3.2G (i.e. not supported by DEC Ada V3.3) ?
Actually either compiler should work on UNIX prior to V3.2G. That
statement does not mean I'll accept a problem report on prior UNIX
versions. Read on:
The reason we require UNIX 3.2G is that it fixes a number of customer
problem reports we've gotten (where various UNIX-supplied libraries
needed bug fixes). Sorting through the problems reported in UNIX 3.2,
3.2C, etc, isn't easy, especially when the problem isn't in Ada.
We've thoroughly tested on 3.2G, whereas we haven't on some of these
other UNIX versions (too many!).
Ada V3.2-15 is a one-off compiler for a high-priority customer report.
It was tested against UNIX 3.0. It hasn't been widely given out, and it
was *not* ECO'd (V3.2-13 was ECO'd).
Just from logistics of installation and future support of your customer,
I'd recommend Ada V3.3 and UNIX 3.2G.
Charlie
|