| There's a host of data structures in STARLET. Source would be found in
[STARLET.LIS]OBJFMT.SDL in a listing kit.
Note that UNIVERSAL symbols appear in an STB as you suggest, but GLOBAL
symbols, which only show up if you have SYMBOL_TABLE=GLOBAL in the
options file, appear as offsets from the base of the image.
SDA has to sort all this out, and I've learned more than I want to
about STBs. :-).
You could also have them look at how SDA reads STBs from the listings
kit.
- Richard.
|
| :A customer is porting a 3rd party application from vax to Alpha (OpenVMS V7.1).
:The application reads .stb files generated by the linker. I didn't ask,
:but I am assuming that it's reading global symbol values.
Can they use lib$find_image_symbol, either as part of the
build, or at run-time?
:He is having difficulty porting this application because he can't find
:the format of the .stb file for OpenVMS Alpha, and has called the CSC
:asking for that information. I can't find it either.
He needs the listings CD-ROMs...
:Is the format of the .stb and/or image/symbol vector table documented (other
:than in the vms source, that is)? Are there macro files in starlet.mlb
:or lib.mlb that define these formats? I know that there is an image
:header definition macro file, but am not sure about the others.
Beyond what is in the linker manual, no.
:My current thinking on this is that this is a consulting issue, and
:that we probably don't owe the customer this information simply because
:he has a support contract. However, I feel obligated to make a
:valid effort to try to determine if this information is readily
:available.
This question is clearly (IMO) a consulting issue...
|
|
For what it is worth, just as it is on OpenVMS VAX, an STB file
on OpenVMS Alpha is just an object file[1]. It is readable with
ANALYZE/OBJECT and the symbols are defined and described in
Appendix B of the LINKER manual.
[1] As explicitly stated in the first line of section B.1
|