background image

nld and noft Manual — 520384-003

3 -1

3

nld Options

An option is a flag and its parameters, if any. You use the 

nld

 options to specify the 

input object file, control the 

nld

 environment, and control the format of 

nld

 output. 

This section describes the syntax and semantics of 

nld

 options and provides 

examples of each option.

Table 3-1. nld Flag Summary

(page 1 of 2)

Flag

Description

-allow_duplicate_procs

 

on page 3-2

Directs 

nld

 not to report an error if more than one procedure has 

the given name.

-allow_missing_libs

 on 

page 3-3

Prevents 

nld

 from stopping when it cannot find an archive or 

SRL.

-allow_multiple_mains

 

on page 3-3

Specifies that more than one procedure can have the MAIN 
attribute.

-ansistreams

 on 

page 3-3

Specifies that C run-time library functions create files of type 180.

-bdynamic

 on page 3-3

Directs 

nld

 to search for shared run-time libraries (SRLs) and 

archive files when resolving 

-l

 and 

-lib

 options.

-bstatic

 on page 3-4

Directs 

nld

 to search for archive files when resolving 

-l

 and 

-lib

 options.

-change

 on page 3-4

Changes a run-time attribute to a specified value in an existing 
loadfile.

-e

 on page 3-5

Identifies the function at which the program is to begin executing 
when the program is loaded.

-elf_check

 on page 3-5

Directs 

nld

 to check a loadfile for corruptions that might have 

occurred.

-export

 on page 3-5

Specifies that a symbol is exported by the user library or SRL 
being created.

-fl or -obey

 on page 3-6

Specifies the name of an 

nld

 command file containing 

nld

 

command tokens.

-import

 on page 3-6

Imports a specified unresolved symbol from the SRL.

-l or -lib

 on page 3-7

Specifies an SRL or archive file to resolve external references 
from the linkfile being linked.

-L or -libvol

 on page 3-8

Specifies a location to search for an SRL or archive file specified 
by a simple filename in 

-l

 and 

-lib

 options.

-libname

 on page 3-9

Associates a TNS/R native user library with an native loadfile.

-nostdfiles

 on page 3-9

Specifies that C run-time library functions do not open the 
standard input and standard output files automatically.

-nostdlib

 on page 3-9

Prevents 

nld

 from searching the standard library locations for 

SRLs and archive files.

Summary of Contents for nld

Page 1: ...creates and maintains archives of object files and strip T8629 which removes unnecessary information from loadable object files loadfiles in the HP NonStop Kernel Open System Services OSS environment Product Version nld D44 noft D45 ar D43 strip D43 Supported Release Updates RVUs This manual supports D45 and G06 and all subsequent RVUs until otherwise indicated in a new edition Part Number Publish...

Page 2: ...1 nld D44 noft D42 ar D43 November 2000 427686 001 nld D44 noft D42 ar D43 strip D43 February 2001 520384 001 nld D44 noft D42 ar D43 strip D43 July 2001 520384 002 nld D44 noft D42 ar D43 strip D43 February 2002 520384 003 nld D44 noft D45 ar D43 strip D43 May 2003 ...

Page 3: ...ct Files 1 2 nld 1 2 noft 1 4 ar 1 5 strip 1 5 2 nld Utility Running the nld Utility in the Guardian Environment 2 1 Running the nld Utility in the OSS Environment 2 3 Running Windows nld on the PC 2 4 Components of Windows nld 2 4 Directory Structure of Windows nld 2 4 Compilers That Can Launch Windows nld 2 5 How Windows nld Differs from nld 2 5 How the ETK Command Line and GUI Interfaces Differ...

Page 4: ...ive Files 2 21 Linking Floating Point Programs 2 22 Link Time Consistency Checking 2 23 Run Time Consistency Checking 2 25 Linking Mixed Language Programs 2 26 Searching for Archives and SRLs With Simple Filenames 2 27 Dynamic and Static Linking 2 28 Stripping Symbol Information 2 29 nld Compilation Rules 2 29 Case Sensitivity 2 29 Local and Shared Symbols 2 30 Declaration and Definition 2 31 3 nl...

Page 5: ... 3 15 strip 3 16 ul 3 16 verbose 3 16 x 3 17 y 3 17 4 noft Utility Running the noft Utility in the Guardian Environment 4 1 Running the noft Utility in the OSS Environment 4 3 Listing Object Files 4 4 Dumping Object Files 4 5 Controlling the noft Environment 4 5 Debugging With noft 4 7 5 noft Options Break Key 5 3 Exclamation Point 5 4 CD 5 5 COMMENT 5 5 DUMPADDRESS or DA 5 6 DUMPOFFSET or DO 5 8 ...

Page 6: ...XUPS or LLF 5 30 LISTSRLINFO or LLI 5 31 LISTUNREFERENCED or LUR 5 32 LISTUNRESOLVED or LU 5 35 LOG 5 38 OBEY 5 39 OUT 5 39 QUIT or Q 5 40 RESET 5 41 SET 5 42 SHOW 5 47 SYSTEM or VOLUME 5 48 XREFPROC or XP 5 49 6 ar Utility 7 strip Utility 8 Native Object File Structure Code and Data Segments 8 1 MDEBUG Section 8 2 9 Converting From Binder to nld and noft Object File Differences 9 1 Linking Unit D...

Page 7: ...Fatal Errors 11 1 Data Errors 11 4 Warnings 11 18 Syntax Errors 11 22 12 ar Diagnostic Messages A Sample nld and noft Session Example Program A 1 Header Files A 2 Source Module MAINC A 3 Source Module MODULE1C A 3 Source Module MODULE2C A 5 User Library UTILC A 6 Compilation Commands A 6 nld Command Examples A 7 Program Output A 8 noft Command Examples on a Linkfile A 9 FILE A 9 LISTATTRIBUTE A 9 ...

Page 8: ...xample 2 4 Creating a User Library OSS 2 3 Example 2 5 Creating a Program File OSS 2 3 Example 2 6 Creating an Executable C Program OSS 2 4 Example 2 7 Running nmcobol and Launching Windows nld 2 5 Example 2 8 Running nld from the Command Prompt 2 6 Example 2 9 Creating a Program for the Guardian Environment OSS 2 8 Example 2 10 Creating an Executable C Program 2 10 Example 2 11 Linking a Mixed La...

Page 9: ...RS Option DETAIL 5 24 Example 5 16 LISTOPTIMIZE Option 5 26 Example 5 17 LISTPROC Option BRIEF 5 28 Example 5 18 LISTPROC Option DETAIL 5 28 Example 5 19 LISTSOURCE Option BRIEF 5 29 Example 5 20 LISTSOURCE Option DETAIL 5 30 Example 5 21 LISTSRLINFO Option BRIEF 5 31 Example 5 22 LISTSRLINFO Option DETAIL 5 31 Example 5 23 pTAL Program for Example 5 24 and Example 5 29 5 33 Example 5 24 LISTUNREF...

Page 10: ...ource Module MAINC With Edit Line Numbers A 3 Example A 6 Source Module MODULE1C With Edit Line Numbers A 4 Example A 7 Source Module MODULE2C With Edit Line Numbers A 5 Example A 8 User Library UTILC With Edit Line Numbers A 6 Example A 9 Linking an Executable User Library A 7 Example A 10 Linking a Program File A 7 Example A 11 Sample Program Output A 8 Example A 12 FILE Option Linkfile A 9 Exam...

Page 11: ...ified 2 23 Table 2 4 Floating Point Type Consistency Check by nld floattype Specified 2 24 Table 2 5 Incompatible Program File and User Library floattypes TNS 2 25 Table 2 6 Local and Shared Symbols by Language 2 30 Table 2 7 Declarations and Definitions by Language 2 31 Table 3 1 nld Flag Summary 3 1 Table 3 2 Descriptions of Run Time Attributes 3 13 Table 3 3 Default Run Time Attribute Values 3 ...

Page 12: ...Contents nld and noft Manual 520384 003 x ...

Page 13: ...s loadfiles in the HP NonStop Kernel Open System Services OSS environment Product Version nld D44 noft D45 ar D43 strip D43 Supported Release Updates RVUs This manual supports D45 and G06 and all subsequent RVUs until otherwise indicated in a new edition Document History Part Number Published 520384 003 May 2003 Part Number Product Version Published 426922 001 nld D44 noft D42 ar D43 November 2000...

Page 14: ...Using the Guardian nld Utility to Link SRLs on page 2 17 Table 2 2 Using the OSS nld Utility to Link SRLs on page 2 19 e on page 3 5 Table 3 2 Descriptions of Run Time Attributes on page 3 13 Table 3 3 Default Run Time Attribute Values on page 3 15 Fatal Errors on page 10 12 1306 1307 Nonfatal Errors on page 10 61 2022 2041 2042 Warnings on page 10 69 10043 10044 noft Utility Changes to Section 5 ...

Page 15: ... page 5 23 added Example 5 31 Effect of EXCLUDE on LISTUNRESOLVED Option on page 5 37 changed Example 5 40 XREFPROC Option for Non PIC Object File With Reference Indicators CALLS and DETAIL on page 5 52 added Changes to Section 11 noft Diagnostic Messages New data errors 1006 1007 1065 Changed data error 1007 New warnings 2013 2014 2015 2016 In Appendix A Sample nld and noft Session the examples h...

Page 16: ...What s New in This Manual nld and noft Manual 520384 003 xiv Miscellaneous ...

Page 17: ...ble object files loadfiles in the HP NonStop Kernel Open System Services OSS environment Subsections Audience on page xv Related Reading on page xvi Your Comments Invited on page xvi Notation Conventions on page xvii Audience This manual is intended for systems programmers and application programmers who are familiar with the following HP NonStop servers NonStop Kernel operating system Reference m...

Page 18: ...g this manual please take a moment to send us your comments You can do this by Completing the online Contact NonStop Publications form if you have Internet access Faxing or mailing the form which is included as a separate file in Total Information Manager TIM collections and located at the back of printed manuals Our fax number and mailing address are included on the form Sending an e mail message...

Page 19: ...x presentation in this manual UPPERCASE LETTERS Uppercase letters indicate keywords and reserved words enter these items exactly as shown Items not enclosed in brackets are required For example MAXATTACH lowercase italic letters Lowercase italic letters indicate variable items that you supply Items not enclosed in brackets are required For example file name Brackets Brackets enclose optional synta...

Page 20: ...s any number of times For example M address 1 new value 0 1 2 3 4 5 6 7 8 9 An ellipsis immediately following a single syntax item indicates that you can repeat that syntax item any number of times For example s char Punctuation Parentheses commas semicolons and other symbols not previously described must be entered as shown For example error NEXTFILENAME file name LISTOPENS SU process name su nam...

Page 21: ... Example Notation In examples with user input user input is in bold type and it is assumed that the user presses the return key after typing the input For instance in the example ENTER RUN CODE 123 CODE RECEIVED 123 00 the system displays ENTER RUN CODE on one line and prompts the user with on the next line the user types 123 and presses return and the system displays CODE RECEIVED 123 00 Change B...

Page 22: ...About This Manual nld and noft Manual 520384 003 xx Change Bar Notation ...

Page 23: ...nt environment the functions that nld and noft provide are similar but not identical to the functions that the Binder product provides in the TNS development environment For migration information see Section 9 Converting From Binder to nld and noft Subsections Native Object Files on page 1 2 nld on page 1 2 noft on page 1 4 ar on page 1 5 strip on page 1 5 Utility Full Name Description nld Native ...

Page 24: ... For use in determining the libraries to be used at run time As symbol bindings Loadfiles can also be used as noft input For example nld newobj o crtlmain o zcrtlsrl specifies a linkfile newobj o a library linkfile crtlmain o and a library loadfile zcrtlsrl Including the library load file in the nld command makes its facilities available at run time Native object files in the Guardian environment ...

Page 25: ... You cannot run nld interactively This manual explains only how to run nld directly For information on running nld from compilers see the following manuals C C Programmer s Guide COBOL85 for NonStop Systems Manual pTAL Reference Manual For more information about nld in this manual see Section 2 nld Utility Section 3 nld Options Section 10 nld Diagnostic Messages Environment Compiler T Number Guard...

Page 26: ... Various file headers Program text and data Symbol table and its component parts Run time procedure table and relocation tables These noft capabilities are useful when developing and debugging programs The noft utility runs in the following environments Guardian OSS The noft utility has the same capabilities in each environment but each environment has a slightly different syntax You can run noft ...

Page 27: ...uns in the following environments Guardian Open System Services OSS The following PC platforms For more information see Section 6 ar Utility Section 12 ar Diagnostic Messages strip The strip utility removes unnecessary information from loadfiles Unnecessary information is that which is not required for proper execution of the files The strip utility runs in the Open System Services OSS environment...

Page 28: ...Introduction to the Utilities nld and noft Manual 520384 003 1 6 strip ...

Page 29: ...king Shared Run Time Libraries SRLs on page 2 15 Linking Archive Files on page 2 21 Linking Floating Point Programs on page 2 22 Searching for Archives and SRLs With Simple Filenames on page 2 27 Dynamic and Static Linking on page 2 28 Stripping Symbol Information on page 2 29 nld Compilation Rules on page 2 29 Running the nld Utility in the Guardian Environment To run the nld utility in the Guard...

Page 30: ...lag and its parameters if any You must include a space between a flag and its parameters except after the l and L flags Case is not significant when specifying nld options except for the l and L flags For descriptions of nld flags and their parameters see Section 3 nld Options If you do not specify any parameters on the command line and the standard input file is not an edit file nld returns synta...

Page 31: ...file You can specify input from the command line or use the option fl or obey on page 3 6 which allows the contents of a file to be entered in the command input at the point specified Use the obey option to supply several options or input filenames Example 2 3 combines object files named objecta objectb and objectc and creates a loadfile named objectd Example 2 4 links the object files named obj1 ...

Page 32: ...ructure of Windows nld on page 2 4 Compilers That Can Launch Windows nld on page 2 5 How Windows nld Differs from nld on page 2 5 How the ETK Command Line and GUI Interfaces Differ on page 2 6 Command Line Interface Linking Options on page 2 7 Components of Windows nld The components of Windows nld are Directory Structure of Windows nld The directory structure of Windows nld is Example 2 6 Creatin...

Page 33: ...dows nld Differs from nld Windows nld object files are compatible with NonStop Kernel object files that is you can build object files on either of these platforms and then link them on the other Linking object files on Windows nld is usually much faster than linking them on the NonStop Kernel For Windows nld the following flags are meaningless NS_extent_size on page 3 10 NS_max_extents on page 3 1...

Page 34: ... You must specify them Filename Path Format NonStop Kernel format see the Guardian User s Guide or the Open System Services User s Guide Windows format see the documentation for your Windows operating system pTAL You must compile and link a program in separate steps You can compile and link a program in one step A Windows format filename path that includes a backslash or a space must be enclosed i...

Page 35: ...mand Line Interface Linking Options The command line interface link options for C C and COBOL are l library L directory s Wansistreams WBdynamic WBstatic Wheap N b w p Whighpin on off Whighrequesters on off W no inspect Wnld arguments Wnld_obey file Wnostdlib Wr Wrunnamed W no saveabend Wx ...

Page 36: ...inks the object files names obj6 o and obj7 o into a program named prog that you intend to run as a Guardian process Creating Loadfiles and Linkfiles A loadfile cannot be linked to a new object file it can be used only as input to nld with options that modify an existing loadfile A linkfile can be used as nld input again nld creates a loadfile if you do not specify the r flag If you do specify the...

Page 37: ...utable C program using nld 1 Link together the object code files that you compiled 2 Link to the C run time library initialization object code file 3 Link to the SRLs that your program uses To link the standard set of C SRLs use the following options 4 If your program uses active backup programming functions such as __ns_start_backup link to the active backup programming support object code file N...

Page 38: ...ian environment ZCRESRL and ZCRTLSRL are located in the active SYSnn subvolume C Programs There are three versions of C When you compile a C program you can specify its version with the command line directive VERSION1 VERSION2 or VERSION3 The default is VERSION3 Environment Active Backup Programming Support Object Code File Guardian SYSTEM SYSTEM CPPINIT OSS usr lib cppinit o Example 2 10 Creating...

Page 39: ... to link a C program you must specify these items in nld options For details see the C C Programmer s Guide Follow these step to create an executable C program using nld 1 Link together the object code files that you compiled 2 Link to the C run time library initialization object code file C Input Files C Version Recorded in the Loadfile VERSION1 CPP_V1 1 VERSION2 CPP_V2 2 VERSION3 CPP_V3 3 Mixed ...

Page 40: ...n environment the NMCOBOL compiler automatically calls nld to link the compiled program only if the compiler is run with the RUNNABLE directive When the NMCOBOL compiler automatically calls nld to link the compiled program it gives nld the following The compiled program s object filename either the object filename that you specified or the default name a out as the input filename The name of the C...

Page 41: ...les that contain embedded NonStop SQL MP statements After creating a loadfile with nld use the NonStop SQL MP compiler SQLCOMP to set up an executable NonStop SQL MP application Always run nld before SQLCOMP Do not run SQLCOMP on a linkfile and use the resulting file as nld input A user library cannot contain embedded NonStop SQL MP Linking User Libraries A user library which is optional is a set ...

Page 42: ...ser library can contain its own data which is allocated for each process in a separate location from the client program s data A TNS R native user library can call functions in shared run time libraries SRLs such as the C run time library If a user library calls functions in an SRL you must specify the SRLs when linking Do not link the CRTLMAIN object file to a user library To create a TNS R nativ...

Page 43: ...atically gets its own run time copy of the data called instance data A process can use several SRLs Some of the code configured in the system library for TNS processes is packaged in SRLs for native processes for example C run time library TCP IP sockets library Tools h class library Much of the OSS API HP supplies public SRLs you cannot create your own You can create your own user library See Lin...

Page 44: ...to create a program file depend on the run time resources a program uses Subsections Specifying SRLs on page 2 16 Determining Which SRLs Programs Require on page 2 17 Specifying SRLs You can specify SRLs on the nld command line directly and with the options l or lib on page 3 7 Using options is usually easier to understand and more flexible A file specified in a l or lib option must be an SRL or a...

Page 45: ...to the most common SRLs which are C run time library C run time library COBOL run time library Tools h library TCP IP sockets library Your program might require additional SRLs for other run time libraries and services Environment in Which You Are Using nld See Guardian Table 2 1 on page 2 17 OSS Table 2 2 on page 2 19 Table 2 1 Using the Guardian nld Utility to Link SRLs page 1 of 2 Library That ...

Page 46: ...LSRL or l ZCRTLSRL l ZCRESRL l ZCPLSRL l ZTLHSRL l ZRWSLSRL OSS OBEY SYSTEM SYSTEM LIBCOBEY l ZOSSHSRL l ZSTFNSRL l ZCPLSRL l ZRWSLSRL l ZTLHSRL or l ZOSSHSRL l ZCRTLSRL l ZCRESRL l ZOSSKSRL l ZOSSFSRL l ZSECSRL l ZI18NSRL l ZICNVSRL l ZOSSESRL l ZINETSRL l ZSTFNSRL l ZCPLSRL l ZRWSLSRL l ZTLHSRL VERSION3 Standard C library Either l ZSTLSRL OBEY SYSTEM SYSTEM LIBCOBEY COBOL run time libraries Eith...

Page 47: ...le Table 2 2 Using the OSS nld Utility to Link SRLs page 1 of 2 Library That Program Uses Environment in Which Program Runs nld Options to Specify C run time library Guardian obey usr lib libc obey or l ZCRTLSRL l ZCRESRL OSS obey usr lib libc obey or l ZCRTLSRL l ZCRESRL l ZOSSKSRL l ZOSSFSRL l ZSECSRL l ZI18NSRL l ZICNVSRL l ZOSSESRL l ZINETSRL l ZOSSHSRL l ZSTFNSRL C run time library Guardian o...

Page 48: ...nt is null VERSION2 Standard C library Tools h library version 7 Guardian obey usr lib libc obey l ZTLHSRL l ZRWSLSRL l ZCPLSRL or l ZTLHSRL l ZRWSLSRL l ZCPLSRL l ZCRTLSRL l ZCRESRL OSS obey usr lib libc obey l ZTLHSRL l ZRWSLSRL l ZCPLSRL or l ZTLHSRL l ZRWSLSRL l ZCPLSRL l ZOSSHSRL l ZCRTLSRL l ZCRESRL l ZOSSKSRL l ZOSSFSRL l ZSECSRL l ZI18NSRL l ZICNVSRL l ZOSSESRL l ZINETSRL l ZSTFNSRL VERSIO...

Page 49: ...e options l or lib on page 3 7 Specifying archive files with options is usually easier to understand than specifying archive files on the command line nld resolves references using archive files in the order they are specified either on the command line directly or with l or lib options nld searches an archive file to resolve references When nld finds object files that satisfy references it copies...

Page 50: ... the floating point type of the output object file using the option set on page 3 13 with the attribute name FLOATTYPE The floating point type can be any of the following TANDEM_FLOAT IEEE_FLOAT NEUTRAL_FLOAT If you do not specify the floating point type of the output object file nld derives it from the types of the input files see Link Time Consistency Checking on page 2 23 When modifying an exis...

Page 51: ...es of all the input object files to determine the floattype attribute value of the output object file If the consistency checks of the input object files result in an invalid floating point type or an inconsistent value nld issues an error message and does not create an output object file Table 2 3 Floating Point Consistency Check by nld Utility floattype Not Specified Number of Input Files With F...

Page 52: ...utput file is IEEE_FLOAT Warning message Output file is NEUTRAL_FLOAT 0 0 1 or more Warning message Output file is TANDEM_FLOAT Warning message Output file is IEEE_FLOAT No message Output file is NEUTRAL_FLOAT 1 or more 1 or more 0 or more Warning message Output file is TANDEM_FLOAT Warning message Output file is IEEE_FLOAT Warning message Output file is NEUTRAL_FLOAT Note If source code manipulat...

Page 53: ...if there is one has a floattype compatible with that of the program file If not the program is not allowed to run If the floattype attribute of the program file is IEEE and floattype attribute of the user library file is Neutral the program is allowed to run and the C C run time libraries operate in IEEE mode Even if the user library is marked with a floattype attribute that conflicts with the pro...

Page 54: ...ting point format A COBOL module that does not use floating point format but is marked by the COBOL compiler as TANDEM_FLOAT When you link the modules together you can do either of the following Use the set floattype IEEE_FLOAT option to set the floating point type of the output object file to IEEE floating point format Use the change command to change the floating point type of the COBOL object f...

Page 55: ...locations in the order shown 1 The directory with the current version of the operating system image the active G system sysnn directory 2 The lib directory 3 The usr lib directory 4 The usr local lib directory In the OSS environment the value of the COMP_ROOT environment variable is added to the beginning of lib usr lib and user local lib By default the value of COMP_ROOT is null The Guardian vers...

Page 56: ...d searches for the COBOL run time library ZCOBSRL and the CRE library ZCRESRL SRLs in the subvolume with the current version of the operating system image Dynamic and Static Linking The flags bdynamic on page 3 3 and bstatic on page 3 4 specify dynamic and static linking respectively If the bdynamic flag is specified nld first searches for a shared run time library SRL If an SRL cannot be found nl...

Page 57: ...cify r on page 3 11 you can use the output file again as nld input If the symbol information is completely stripped with the s flag then the file cannot be used as nld input It is not possible to use s and r together Outside of nld you can remove symbol information from an existing loadfile with the strip utility See Section 7 strip Utility nld Compilation Rules The nld utility enforces separate c...

Page 58: ...er can also group data items together into a single data block named _GLOBAL The pTAL compiler can also put the prefix on the name of a data block See the pTAL Reference Manual for details on declaring and sharing data blocks in pTAL Table 2 6 Local and Shared Symbols by Language Language Local Symbols Names of Shared Symbols Names of C C Static data items Static functions Data items declared outs...

Page 59: ...pilation units When a data item is defined more than once nld checks only that the size is the same in all the definitions The body of a procedure is its definition and only one copy of that body can exist It is acceptable however for a body to be absent the same is true for data which like procedures can be found in SRLs If the body does not exist the operating system searches for the procedure a...

Page 60: ...nld Utility nld and noft Manual 520384 003 2 32 Declaration and Definition ...

Page 61: ...when resolving l and lib options change on page 3 4 Changes a run time attribute to a specified value in an existing loadfile e on page 3 5 Identifies the function at which the program is to begin executing when the program is loaded elf_check on page 3 5 Directs nld to check a loadfile for corruptions that might have occurred export on page 3 5 Specifies that a symbol is exported by the user libr...

Page 62: ...page 3 11 Specifies the name of the output object file obey Specifies the name of an nld command file containing nld command tokens See fl or obey on page 3 6 r on page 3 11 Directs nld to create a relinkable object file rename on page 3 12 Changes the name of an externally visible procedure or data item s on page 3 12 Removes symbol information used for linking and symbolic debugging from the out...

Page 63: ...ype of files created can also be set with the ANSISTREAMS C and C compiler pragma See the C C Programmer s Guide for details bdynamic Causes nld to search for shared run time libraries SRLs and archive files when resolving l or lib on page 3 7 This is the default nld first searches for an SRL If an SRL cannot be found nld searches for an archive file nld follows this process in each location a sub...

Page 64: ...e l and lib options and just archive files for others change Changes a run time attribute to a specified value in an existing loadfile To set an attribute when creating a loadfile use set on page 3 13 attribute name is a run time attribute attribute value is the value to which the specified run time attribute is to be set Each run time attribute has a corresponding range of accepted values see Tab...

Page 65: ...ight have occurred in the following situations Unresolved references in the data portion of the file that were not aligned on 4 byte boundaries were later resolved The PC version of nld changed the file header during an SRL fixup operation filename the name of the loadfile to be checked for corruptions export Specifies that a symbol is exported by the user library or SRL being created symbol_name ...

Page 66: ...th of nesting Recursive nesting does not cause an error nld does not read the same command file more than once import For HP internal use in constructing SRLs Imports an unresolved symbol from the SRL symbol_name is the name of the unresolved symbol to be imported from the SRL filename is the external name of the SRL that contains symbol_name The filename cannot be a map DEFINE name srlname is the...

Page 67: ...to the beginning of the name These versions also add either a or srl to the end of the name depending on whether dynamic or static linking is being performed Files with the suffix a are archive files and files with the suffix srl are SRLs Simple filenames in the Guardian file system G are not modified See Dynamic and Static Linking on page 2 28 for more details nld searches for files specified wit...

Page 68: ...optional nld searches for files specified with simple names in l and lib options in locations specified in each L and libvol option in the order specified to nld before searching any of the standard library locations Each version of nld searches a particular set of standard library locations See Searching for Archives and SRLs With Simple Filenames on page 2 27 for details If you specify nostdlib ...

Page 69: ...h a loadfile but not with a linkfile set on page 3 13 and change on page 3 4 can also associate a TNS R native user library with a native loadfile nostdfiles Specifies that C run time library functions do not open the standard input and standard output files automatically nostdlib Prevents nld from searching the standard library locations for shared run time libraries SRLs and archive files See Se...

Page 70: ...s the extent size from the default 32 pages to the specified size extent size is an even number in the range 2 to 65534 inclusive A page has 2048 bytes nld uses extent size for both primary and secondary extents NS_max_extents Changes the maximum number of extents from the default 900 to the specified number max extents is a number in the range 16 to 900 inclusive noverbose Note Guardian environme...

Page 71: ...il nld makes up to 10 attempts to create a new file named ZZNDnnnn If these 10 attempts also fail no file containing the new information is created and nld reports an error If you do not specify a o option the default output filename is a out in the OSS environment and AOUT in the Guardian environment The output file first created by nld has a temporary filename that is later renamed to either the...

Page 72: ... A now has an unresolved reference A new version of procedure B can be linked in The new version of procedure B can call the original procedure by calling procedure C Use this option to replace procedures such as PROCESS_LAUNCH_ with your own version of PROCESS_LAUNCH_ s Removes symbol information used for linking and symbolic debugging from the loadfile A file stripped of all symbol information c...

Page 73: ...ppressed FLOATTYPE TANDEM_FLOAT IEEE_FLOAT NEUTRAL_FLOAT Sets the object file s floating point type to either Tandem floating point IEEE floating point or neutral Neutral means that the object file can be linked with an object file of any floating point type and that it can be executed whether or not the processor supports IEEE floating point For descriptions of Tandem and IEEE floating point form...

Page 74: ...ile segment This value is insignificant as of RVU G06 PROCESS_SUBTYPE SUBTYPE Number in the range from 0 through 2 147 483 647 0x7FFFFFFF Sets the process subtype for the output object file SAVEABEND ON OFF Specifies whether or not to create a save file if the process terminates abnormally during execution SPACE_GUARANTEE Number in the range from 0 through 2 147 483 647 0x7FFFFFFF Sets the space s...

Page 75: ...ng point type of the output object file from the types of the input files For details see the C C Programmer s Guide HEAP_MAX 0 The operating system provides the default heap size HIGHPIN ON HIGHREQUESTER HIGHREQUESTERS HIGHREQUESTOR HIGHREQUESTORS ON INSPECT ON LIBNAME None MAINSTACK_MAX 0 The operating system provides the default stack size RUNNAMED OFF PFS PFS_SIZE 0 PROCESS_SUBTYPE SUBTYPE 0 S...

Page 76: ...h the x on page 3 17 You cannot specify any other options or object filenames with the strip option The resulting file has the same nld timestamp as before ul Creates a TNS R native user library Use ul when linking files together to create a TNS R native user library Use libname on page 3 9 to associate a TNS R native user library with a TNS R native user program See Linking User Libraries on page...

Page 77: ...y the same filename again for the output file with o on page 3 11 you can partially strip a file in place The resulting file has a new nld timestamp The resulting object file is not necessarily smaller than the original file y Identifies the object files that define and use a specified symbol symbol is the symbol to report on If you use verbose on page 3 16 nld writes to its output listing informa...

Page 78: ...nld Options nld and noft Manual 520384 003 3 18 y ...

Page 79: ... but noft is most often used as an interactive process To run the noft utility in the Guardian environment use the TACL command RUN The most common forms of RUN used for noft follow For complete information on RUN see the TACL Reference Manual RUN NOFT is the TACL command to start the noft process command file is an edit file containing one or more noft options If the file contains more than one o...

Page 80: ...on is one or more noft flags with their parameters if any When you run noft from the command line Include the option FILE or F on page 5 15 Do not include the following options which work only in an interactive session Exclamation Point on page 5 4 FC on page 5 14 Do not include the following which are useful only in an interactive session The option HISTORY or H on page 5 20 The HISTORYBUFFER or ...

Page 81: ...k or question mark as a parameter do either of the following Enclose the option and its parameters in quotation marks for example noft file sample listproc Enclose the entire sequence of options in quotation marks for example noft file sample listproc Do not include the following options which work only in an interactive session Exclamation Point on page 5 4 FC on page 5 14 Do not include the foll...

Page 82: ...ct file LISTOPTIMIZE or LO on page 5 26 Procedures in an object file based on optimization level LISTPROC or LP on page 5 27 Procedures and subprocedures in an object file LISTSOURCE or LS on page 5 29 Source files in an object file LISTSRLEXPORTS or LLE on page 5 30 Information about the symbols exported by a shared run time library SRL LISTSRLFIXUPS or LLF on page 5 30 Names of SRLs to which the...

Page 83: ...ent working directory used to search for relative filenames Use only in OSS environment COMMENT on page 5 5 Allows comments in noft command files ENV on page 5 13 Displays the current settings of environment parameters EXIT or E on page 5 13 Stops the noft process FC on page 5 14 Edits or repeats a previously executed command line FILE or F on page 5 15 Specifies the name of the target object file...

Page 84: ...layed with the HISTORY option Name of log file Name of file to which noft writes input and output listings Scope of noft options to a single procedure or subprocedure Scope of noft options to a single source file Sorting order of the output SYSTEM or VOLUME on page 5 48 Specifies the default node volume and subvolume names used to resolve partially qualified Guardian filenames Use only in the Guar...

Page 85: ...he RISC instruction level Example 4 3 is followed by DUMPPROC listings of its compute function compiled at optimization levels 0 1 and 2 After the listings is a comparison of optimization levels Note You must use Visual Inspect rather than Inspect to debug PIC executable files Example 4 3 C Program long compute long a int main void long z 10 long x x compute z return 0 long compute long a long b i...

Page 86: ...compute 20000 0x70000480 0x8faf0000 lw t7 0 sp compute 20000 0x70000484 0000000000 nop compute 20000 0x70000488 0x000fc080 sll t8 t7 2 compute 20000 0x7000048c 0x0098c821 addu t9 a0 t8 compute 20000 0x70000490 0x8f280000 lw t0 0 t9 compute 20000 0x70000494 0000000000 nop compute 20000 0x70000498 0x01c84821 addu t1 t6 t0 compute 20000 0x7000049c 0xafa90004 sw t1 0x4 sp compute 20000 0x700004a0 0x25...

Page 87: ...68 0xafa00000 sw zero 0 sp 20 b a i compute 20000 0x7000046c 0x8faf0000 lw t7 0 sp compute 20000 0x70000470 0x8fae0004 lw t6 0x4 sp compute 20000 0x70000474 0x000fc080 sll t8 t7 2 compute 20000 0x70000478 0x0098c821 addu t9 a0 t8 compute 20000 0x7000047c 0x8f280000 lw t0 0 t9 compute 20000 0x70000480 0x25ea0001 addiu t2 t7 0x1 compute 20000 0x70000484 0x29410014 slti at t2 0x14 compute 20000 0x700...

Page 88: ...ute Procedure Src Line Address Long Word Instructions 19 for i 0 i 20 i compute 19000 0x70000450 0x00802825 move a1 a0 compute 18000 0x70000454 0x00001825 move v1 zero compute 19000 0x70000458 0x24040014 li a0 0x14 compute 19000 0x7000045c 0x00001025 move v0 zero 20 b a i compute 20000 0x70000460 0x8cae0000 lw t6 0 a1 compute 20000 0x70000464 0x8caf0004 lw t7 0x4 a1 compute 20000 0x70000468 0x8cb8...

Page 89: ...e by placing the code inline This can result in a larger object file Optimizes across compound statement boundaries A loop is an example of a compound statement Uses registers instead of using memory extensively Changes the loop to load four values at a time instead of one value at a time The difference between optimize 1 and optimize 2 is typically much less than it is in Example 4 3 on page 4 7 ...

Page 90: ...noft Utility nld and noft Manual 520384 003 4 12 Debugging With noft ...

Page 91: ...anges the current working directory used to search for relative filenames Use only in OSS environment COMMENT on page 5 5 Allows comments in noft command files DUMPADDRESS or DA on page 5 6 Displays code and data from a virtual address inside an object file s memory space DUMPOFFSET or DO on page 5 8 Displays code and data from a physical offset within the object file DUMPPROC or DP on page 5 10 D...

Page 92: ... fixed up LISTSRLINFO or LLI on page 5 31 Lists the SRLs linked into an object file LISTUNREFERENCED or LUR on page 5 32 Lists the undefined and unreferenced symbols an object file LISTUNRESOLVED or LU on page 5 35 Lists the unresolved symbols in an object file LOG on page 5 38 Writes a copy of the current noft session s input and output to a file OBEY on page 5 39 Directs noft to read from a spec...

Page 93: ...play before pausing so that an area of output does not scroll out of the terminal or emulator display memory Name and type of log file Name and type of output file Scope of noft options to a single procedure or subprocedure Scope of noft options to a single source file Sorting order of the output SHOW on page 5 47 Displays the current values of the noft program environment parameters and the targe...

Page 94: ...number or history offset the option executes the most recently executed command that begins with the string text The history buffer number of the command specified by history number history offset or text must be less than or equal to the number of commands in the history buffer which is determined by SET HISTORYBUFFER see SET on page 5 42 particularly Example 5 8 on page 5 19 The default size of ...

Page 95: ...nd files text is a string of characters a comment Considerations If you use the COMMENT option in a line containing other options COMMENT must be the last option on the line To continue COMMENT text over more than one line start each successive line with the COMMENT option Note OSS environment only Similar Guardian commands are SYSTEM or VOLUME on page 5 48 CD pathname Note The noft utility does n...

Page 96: ...an ending virtual address in hexadecimal format number is the number of bytes or words to display displays information to the end of the code or data section Considerations The range of addresses must be entirely within one code or data section The address of a code section is rounded up to a whole number of words If an address range begins in a code or data section and ends outside the section th...

Page 97: ... the format with the DUMPADDRESS option the formatting is controlled by the SET FORMAT option see SET on page 5 42 Example 5 2 DUMPADDRESS Option noft dumpaddress 0x700005ac for 10 words Readable Dump Of Range 0x700005ac To 0x700005d4 Procedure Src Line Address Long Word Instructions rollem 87000 0x700005ac 0x0d81015c jal 0x76040570 rollem 83000 0x700005b0 0xafb00014 sw s0 0x14 sp rollem 87000 0x7...

Page 98: ...to display displays information to the end of the code or data section Considerations The offset address of a code section is rounded up to a whole number of words If the offset range ends outside of the file the output stops at the end of the file and noft emits an error message format specifier specifies how the information is to be formatted format specifier is one of the following ASCII A disp...

Page 99: ...for displaying text OCTAL O displays portions of the object file in octal format If you do not specify the format with the DUMPOFFSET option the formatting is controlled by the SET FORMAT option see SET on page 5 42 Example 5 3 DUMPOFFSET Option noft dumpoffset 0x00000390 for 20 bytes Readable Dump Of Offset 0x00000390 To 0x000003a4 0x00000390 0x27bdffe0 addiu sp sp 0xffffffe0 0x00000394 0xafbf001...

Page 100: ...mits the scope to the specified subprocedure proc num specifies the procedure number This number specifies the ordering in the object file s procedure table Use LISTPROC or LP on page 5 27 to list each procedure number offset is the number of bytes beyond the starting virtual address of the procedure in hexadecimal format range specifier is the amount of information to display TO end address FOR n...

Page 101: ...SCII A displays portions of the object file in ASCII format DECIMAL D displays portions of the object file in decimal format HEX H displays portions of the object file in hexadecimal format ICODE IC displays portions of the object file in disassembled program code This is the default INNERLIST IN displays portions of the object file in disassembled program code and displays the source code intersp...

Page 102: ...00005cc 0xafaf002c sw t7 0x2c sp rollem 88000 0x700005d0 0x00408825 move s1 v0 rollem 88000 0x700005d4 0x24010006 li at 0x6 rollem 88000 0x700005d8 0x0221001b divu s1 at 89 printf YOU ROLLED A i AND A i FOR A TOTAL OF i n rollem 89000 0x700005dc 0x8fa8002c lw t0 0x2c sp rollem 89000 0x700005e0 0x3c017000 lui at 0x7000 rollem 89000 0x700005e4 0x24240f44 addiu a0 at 0xf44 rollem 89000 0x700005e8 0x0...

Page 103: ...if you enter the EXIT option When noft is run noninteractively as a process it also stops when the command line arguments are exhausted or when it reaches the end of file in an OBEY command file see OBEY on page 5 39 or a TACL RUN command IN parameter input file ENV Example 5 5 Displaying Current noft Environment Settings noft env Object File mysys qtal jasonoft testo Environment Guardian Out File...

Page 104: ...ory number represents The immediately preceding command is 1 text is a string of characters If you provide text instead of history number or history offset the FC option executes the most recently executed command that begins with the string text The history buffer number of the command specified by history number history offset or text must be less than or equal to the number of commands in the h...

Page 105: ...rget object file Considerations You must issue the FILE option before you can use any of the following DUMPADDRESS or DA on page 5 6 DUMPOFFSET or DO on page 5 8 DUMPPROC or DP on page 5 10 LISTATTRIBUTE or LA on page 5 22 LISTCOMPILERS or LC on page 5 23 LISTOPTIMIZE or LO on page 5 26 LISTPROC or LP on page 5 27 LISTSOURCE or LS on page 5 29 LISTSRLEXPORTS or LLE on page 5 30 LISTSRLFIXUPS or LL...

Page 106: ...de the object file noft resolves Guardian filenames using the default volume and subvolume established with the option SYSTEM or VOLUME on page 5 48 noft resolves OSS filenames using the default directory established with CD on page 5 5 Example 5 6 FILE Option noft file obj Object File WORK JASON obj File Format ELF Scope none Case Not Sensitive ...

Page 107: ...sing noft ALL displays a single line description of each noft option see Example 5 7 on page 5 18 option displays information about the specified option including syntax see Example 5 8 on page 5 19 help topic gives detailed information on specific noft topics HELP without any options displays a list of options and help topics see Example 5 9 on page 5 19 HELP ALL option help topic ...

Page 108: ... LISTSOURCE lists source files LISTSRLINFO lists Shared Runtime Library information LISTSRLEXPORTS lists Shared Runtime Library exports LISTSRLFIXUPS lists fixups to Shared Runtime Libraries LISTUNRESOLVED lists unresolved reference information LISTUNREFERENCED lists unreferenced information LOG option to set log file for input and commands OBEY executes commands from obey file OUT option to set o...

Page 109: ...er than the current buffer size then those commands lost from the buffer will be lost permanently HISTORYBUFFER changes the buffer to hold the default number 50 of commands HISTORYBUFFER returns the current history buffer size noft Example 5 9 HELP Without Options noft help NOFT Command Topics Select the topic desired by typing HELP topic topic is CD COMMENT DUMPADDRESS DUMPOFFSET DUMPPROC ENV EXI...

Page 110: ...displayed The default is 10 lines Note This parameter is useful only in an interactive session because options given in the command line are not stored in the history buffer HISTORY H number Example 5 10 HISTORY Option noft HISTORY 7 8 file G qtal jasonoft testo 9 set historywindow 7 10 listproc sss qtal jasonoft samplet 11 dumpproc 3 in hex 12 innerlist on 13 out proc3 14 dumpproc 3 in hex ...

Page 111: ...ELF type 0x00057984 0x00002035 Data PROGBITS 0x0005a000 0x00004f00 Small Data PROGBITS 0x0005ef00 0x000013e0 Unitial Small Data NOBITS No value 0x00000010 Unitial Large Data NOBITS No value 0x00001190 Third Eye Symbols MDEBUG 0x00061000 0x000888e0 Symbolic Header SYMBOL_TABLE 0x00061000 0x00000060 Line Numbers SYMBOL_TABLE 0x00061060 0x00004bf4 Proc Descriptors SYMBOL_TABLE 0x00065c54 0x000066c8 L...

Page 112: ...ATTRIBUTE Option for Non PIC Object File noft listattribute Object File SPEEDY DATA06 T9626D45 noft File Format ELF Timestamp 2002 December 11 08 43 56 Symbols INSPECT Region Yes System Type Guardian Executable Yes Type of Executable non PIC program Process Subtype 0 Highrequesters Yes Runnamed No Highpin Yes Saveabend No Priv or Callable No Callable No OKToSetType No C dialect Neutral DEBUG INSPE...

Page 113: ...SetType No Unresolved handling Error C dialect Neutral Globalized Symbols No Limit Runtime Paths No DEBUG INSPECT INSPECT Maximum Heap Size 0 Main Stack Size 0 Space Guarantee 0 PFS Size 0 Fingerprint 0000 0000 0000 0000 Fingerprint Version 0 Limit Runtime Paths No DEBUG INSPECT INSPECT Maximum Heap Size 0 Main Stack Size 0 Space Guarantee 0 PFS Size 0 Fingerprint 0000 0000 0000 0000 Fingerprint V...

Page 114: ...t Example 5 15 LISTCOMPILERS Option DETAIL page 1 of 2 noft listcompilers detail Linker T6017D44_15OCT99_99258___Guardian Filename CYCLONE PTAL KMZMAIN SECTHDRR File Number 1 R_REFSHFT Compiler Front End not available Back End Optimizer not available Back End Code Generator not available Back End Assembler not available Filename CYCLONE PTAL KMZMAIN ELFHDRR File Number 2 R_REFSHFT Compiler Front E...

Page 115: ...k End Optimizer Optimizer Not Used Back End Code Generator T8304D45_04JUL1976_26JAN2000_GDN Back End Assembler T8304D45_04JUL1976_26JAN2000_GDN Filename CYCLONE PTAL KMZMAIN PROGHDRQ File Number 31 R_REFSHFT Compiler Front End not available Back End Optimizer not available Back End Code Generator not available Back End Assembler not available Filename CYCLONE PTAL KMZMAIN SECTHDRQ File Number 32 R...

Page 116: ...zation level of 0 1 lists procedures with an optimization level of 1 2 lists procedures with an optimization level of 2 list all procedures in the object file sorted by optimization level LISTOPTIMIZE LO 0 1 2 Example 5 16 LISTOPTIMIZE Option noft listoptimize Optimization of Procedures Procedure Name Opt _MAIN 1 2 T8432D40_01NOV95_CRTLMAIN 2 2 __INIT__1_C 0 2 housekeeping 4 1 main 3 1 menu 5 1 ...

Page 117: ...re names with numbers subproc name limits the scope to the specified subprocedure If subproc name is not completely specified noft resolves the name and lists conforming subprocedure names with numbers proc num specifies the procedure number This number specifies the ordering in the object file s procedure table Use the LISTPROC option to list each procedure number specifies all procedures in the ...

Page 118: ...pointFi 5 0x70000c48 __pp__5pointFv 6 0x70000d58 print__5pointFv 7 0x70000dd0 __apl__6stringFR6string 8 0x70000ee8 __vc__6stringFi 9 0x70000f64 print__6stringFv 10 0x70000fa0 __INIT__1_C 11 0x70000fe4 _MAIN 12 0x70001030 T8432D40_01NOV95_CRTLMAIN Example 5 18 LISTPROC Option DETAIL noft listproc __pp__5pointFi detail List of Procedures Number 4 Name __pp__5pointFi Demangled Name point operator int...

Page 119: ...n the object file BRIEF B displays minimal information about source files This is the default DETAIL D displays detailed information about source files If the scope has been set to a single procedure with the SET SCOPEPROC option see SET on page 5 42 the LISTSOURCE option lists only the source file containing the procedure definition LISTSOURCE LS source spec BRIEF B DETAIL D Example 5 19 LISTSOUR...

Page 120: ...he unresolved symbols in a client object file have been fixed up BRIEF B lists only the unresolved symbols and SRL names This is the default DETAIL D provides more information such as number and fixup address Example 5 20 LISTSOURCE Option DETAIL noft listsource detail List of Source Files Number 0 Name CYCLONE PTAL KMZRLD DLL1C Size 432 bytes Address of First Procedure 0x76100390 Language C Optim...

Page 121: ...he default DETAIL displays detailed information about the SRLs LISTSRLINFO LLI BRIEF B DETAIL D Example 5 21 LISTSRLINFO Option BRIEF noft listsrlinfo SRL Name ZCRESRL 0 ZCRTLSRL 1 Example 5 22 LISTSRLINFO Option DETAIL noft listsrlinfo detail Number 0 Name ZCRESRL Fixed Up Yes Generation Number 2 Digest 33829b9d9ba4a01fd7c55b9b980b4e05 Number 1 Name ZCRTLSRL Fixed Up Yes Generation Number 16 Dige...

Page 122: ...e 5 35 To find the functions in an object file that are never referenced use the option XREFPROC or XP on page 5 49 PROC P displays any unreferenced procedures DATA D displays any unreferenced data items displays all unreferenced items BRIEF B lists only the names and numbers of symbols This is the default DETAIL D provides more information such as the type of each symbol For C functions DETAIL pr...

Page 123: ...option FILE or F on page 5 15 then Example 5 24 shows the result of the LISTUNREFERENCED option Compare Example 5 24 to Example 5 29 on page 5 37 which shows the result of the LISTUNRESOLVED option Example 5 23 pTAL Program for Example 5 24 and Example 5 29 INT proc unresolved arg Function definition INT arg EXTERNAL INT proc unreferenced arg Function definition INT arg EXTERNAL INT proc unused ar...

Page 124: ...t of the LISTUNREFERENCED option the NMC compiler eliminated unreferenced prototypes Compare Example 5 26 to Example 5 30 on page 37 which shows the result of the LISTUNRESOLVED option Example 5 25 C Program for Example 5 26 and Example 5 30 extern short unresolved short extern short unreferenced short short unused short arg return short arg 2 long main short i j i 5 j unresolved i return 0 Exampl...

Page 125: ...resolved items BRIEF B displays only symbol names and numbers This is the default format DETAIL D displays detailed name information For C functions DETAIL provides the demangled original names as well as the mangled internal equivalents EXCLUDE E excludes system supplied functions which include millicode calls common System Library calls as documented in the Guardian Procedure Calls Reference Man...

Page 126: ...ption DETAIL noft listunresolved detail Number 4 Name proc4__Fv Demangled Name proc4 Type Proc Addresses Used At 0x761003a4 Number 5 Name proc3__Fv Demangled Name proc3 Type Proc Addresses Used At 0x761003ac Number 10 Name __nw__FUi Demangled Name operator new unsigned int Type Proc Addresses Used At 0x761004a4 0x76100438 Number 11 Name __dl__FPv Demangled Name operator delete void Type Proc Addre...

Page 127: ...4 and 7 do not appear because their procedures are never referenced Compare Example 5 30 to Example 5 26 on page 5 34 which shows the result of the LISTUNREFRERENCED option Example 5 31 on page 5 37 shows the output of the LISTUNRESOLVED option with and without EXCLUDE for the same file Example 5 29 LISTUNRESOLVED Option for Example 5 23 pTAL Program noft listunresolved Unresolved Name 0 UNRESOLVE...

Page 128: ... name of the current log file see Example 5 32 on page 5 38 Considerations If logging is already in progress noft closes the previous log file and begins logging to the new file If the file is the same as the previous log file noft ignores the LOG option and continues logging to the same file When sending large amounts of output to a log file in the Guardian environment you might exceed the defaul...

Page 129: ...e OUT option does one of the following Redirects output to a specified file the output file Redirects output to the standard output file Displays the name of the current output file filename specifies the name of the file to which output is to be redirected the output file If the file exists noft appends the output to it If the file does not exist noft creates it filename is a Guardian filename wh...

Page 130: ...ore specifying its name in the LOG option Specify larger primary secondary and maximum extents For example FUP CREATE VOL SUBVOL OUT1 CODE 180 EXT 100 100 ODDUNSTR MAXEXTENTS 900 To use the file that you created with the previous command enter either of the following commands OUT VOL SUBVOL OUT1 B SET OUT VOL SUBVOL OUT1 B QUIT or Q The QUIT option stops the noft process The noft process stops if ...

Page 131: ...ORYWINDOW LINES LOG OUT SCOPEPROC SCOPESOURCE SORT specifies that all target object file parameters are reset to their default values The target object file parameters are defined in SET on page 5 42 RESET set param Example 5 35 Resetting Target Object File Parameters to Their Default Values noft reset Out File noft_output Log File none Obey File none Current Path lt1 jasonu tests show Sorting non...

Page 132: ...aram in a single SET statement you can use the following abbreviations CASE ON OFF specifies the case sensitivity of the noft environment If the first source file in the symbol table of the target object file is written in C or C the default is case sensitivity ON otherwise the default is case sensitivity OFF ON turns on case sensitivity in the noft environment SET set param SET Command Abbreviati...

Page 133: ...ASCII A displays portions of the object file in ASCII format DECIMAL D displays portions of the object file in decimal format HEX H displays portions of the object file in hexadecimal format ICODE IC displays portions of the object file in disassembled program code INNERLIST IN displays portions of the object file in disassembled program code and displays the source code interspersed with the asse...

Page 134: ...er is an integer in the range 0 through history buffer number that specifies the number of command lines displayed with the HISTORY option The default is 10 returns the current history window size LINES number specifies the number of lines of output to display before pausing so that an area of output does not scroll out of the terminal or emulator display memory number is an integer in the range 0...

Page 135: ... the scope to the specified procedure and subprocedures If the proc name is not completely specified noft resolves the name and lists conforming procedure names with numbers proc name subproc name limits the scope to the specified subprocedure If the proc name or subproc name are not completely specified noft resolves the name and lists conforming subprocedure names with numbers subproc name limit...

Page 136: ...ngle named source file If the specified filename does not uniquely identify a source file noft provides additional help file number specifies the file number This number specifies the ordering in the object file table Each number is presented for each procedure in LISTSOURCE or LS on page 5 29 eliminates any scope limitations present and opens selections to the entire object file returns the curre...

Page 137: ...he target object file parameters It is a superset of ENV on page 5 13 SHOW Example 5 36 SHOW Option noft show Object File G qtal jasonoft testo Environment OSS Out File noft_output Log File none Obey File none Current Path lt1 jasonu tests show Sorting Alpha Formatting Icode Scope none Case Sensitive History Size 50 History Window 10 Lines Per Page 0 ...

Page 138: ...e from which you invoked noft Considerations Without parameters the SYSTEM or VOLUME option restores the default path to the node volume and subvolume from which you invoked noft ENV on page 5 13 and SHOW on page 5 47 list the noft current settings of the volume and subvolume The noft utility does not verify the validity of the specified node volume or subvolume name noft provides verification onl...

Page 139: ...oc name limits the scope to the specified subprocedure If the proc name or subproc name are not completely specified noft resolves the name and lists conforming subprocedure names with numbers subproc name limits the scope to the specified subprocedure If subproc name is not completely specified noft resolves the name and lists conforming subprocedure names with numbers proc num specifies the proc...

Page 140: ...g procedures referenced by the indicated procedures and the addresses where the calls are made For C functions DETAIL provides the demangled original names as well as the mangled internal equivalents If the target object file is non PIC references to functions that might be used for calls for example function pointers passed as parameters are identified by the word reference see address_order_sort...

Page 141: ..._ __INIT__1_C C_INT_LG_INIT_C_EXT_COMPLETE_ _MAIN __apl__5pointFR5point main __apl__6stringFR6string main __dl__FPv __apl__6stringFR6string __nw__FUi __apl__6stringFR6string __pl__5pointFR5point __pp__5pointFi main Example 5 38 XREFPROC Option DETAIL noft xrefproc __apl__6stringFR6string calls detail Calling Procedure Demangled Name Called Procedures Demangled Name Addresses __apl__6stringFR6strin...

Page 142: ...n for C Program in Example 5 25 noft xp Called Procedure Calling Procedures C_INT_INIT_COMPLETE_ _MAIN C_INT_INIT_START_ __INIT__1_C exit _MAIN main _MAIN unresolved main Example 5 40 XREFPROC Option for Non PIC Object File With Reference Indicators CALLS and DETAIL noft xrefproc build_address_order_procs calls detail Calling Procedure Demangled Name Called Procedures Demangled Name Addresses buil...

Page 143: ...indows 2000 Windows XP TDS1 Yes Yes No No ETK2 No Yes Yes Yes 1 HP Tandem Development Suite 2 HP Enterprise Toolkit NonStop Edition ar action option modifier option position_name archive file Name Function page 1 of 2 d Delete the specified file s from the archive m Move the specified file s The a b or i option with the position name operand indicates the destination of the move otherwise move the...

Page 144: ... must be either a Guardian EDIT file or a OSS text file In the obey file you must specify one and only one option from the required flag set dmpqrtx You can also specify any number of optional flags from the set abcilsuvCT If you select a modifier option a b or i you must also specify the name of a file within the library position_name immediately following the option list and separated from it by...

Page 145: ... l In the OSS environment create temporary files in the local current working directory instead of the directory specified by the environmental variable TMPDIR In the Guardian environment and on Windows platforms this option is ignored temporary files are always created in the default subvolume in the Guardian environment and in the current folder on platforms running Windows s Force regeneration ...

Page 146: ...in the archive including access ownership size and date and time information The specific content of the listing is as follows access info user ID group ID member size month day hour minute year Filename When used with t on Windows platforms the ownership fields are shown although shown as zero because Windows provides for ownership but access information for group and other is shown as no access ...

Page 147: ... or modified PC is the filename of the archive file to be created or modified It can be partially or fully qualified and can include system and folder names Environment file Guardian is the fully qualified or partially qualified filename of a file whose file code is 100 180 or 700 If partially qualified the value of the DEFAULTS DEFINE supplies the missing components of the filename OSS is the pat...

Page 148: ...e file embedded as a member of another archive file is not usable by Binder or nld A file within an archive is named by a filename which is the last component of the pathname used when the file was entered into the archive The comparison of a file operand to the name of a file in an archive is performed by comparing the last component of the operand to the name of the archive file In the Guardian ...

Page 149: ...er and Inspect symbols regions from every TNS or accelerated object file The symbols region from every TNS R native object file The strip utility returns the following exit values Removing the Binder and Inspect symbols regions from a loadfile does not affect the behavior or outcome of the program Programs stripped of the Inspect symbols region cannot be debugged symbolically TNS and accelerated p...

Page 150: ...strip Utility nld and noft Manual 520384 003 7 2 ...

Page 151: ... and nonresident procedures are intermixed in the file In loadfiles resident and nonresident procedures are in separate code segments The data segments of an object file contain information such as global variables in pTAL and extern and static variables in C that does not appear and disappear with each invocation of a procedure or subprocedure The compilers generate code that uses the run time st...

Page 152: ...ng and symbolic debugging information You can remove either the symbolic debugging information or both the linking and symbolic debugging information from TNS R native object files see Stripping Symbol Information on page 2 29 Table 8 2 MDEBUG Section Tables Table Purpose External symbol table1 Describes the code and data addresses that are meaningful outside a single compilation Each procedure na...

Page 153: ... Native Application Migration Guide Object File Differences Because of file format differences between a TNS or accelerated object file and a native object file nld and noft do not operate on TNS or accelerated object files Unlike TNS and accelerated object files which can be both linkfiles and loadfiles native object files are either linkfiles or loadfiles but not both For more information on nat...

Page 154: ...created by the ar utility Any type of files may be placed into archives but nld is only concerned with archives that contain relinkable native object files You can create an archive containing the object files previously searched in Binder SELECT SEARCH commands and specify that archive to nld nld searches the archive to resolve references and copies to the target object file those object files fr...

Page 155: ...rameters CD Not applicable because nld does not have an interactive interface CHANGE change nld supports parameters applicable to native processes CLEAR CLEAR is comparable to starting another invocation of nld COMMENT Use as a comment in a command file DELETE No equivalent available DUMP Provided by noft ENV Not applicable because nld does not have an interactive interface EXIT Not applicable bec...

Page 156: ...port SELECT parameters See Linking Unit Differences on page 9 2 for details on using archives instead of Binder SELECT SEARCH commands SET set nld supports parameters applicable to native processes SHOW Provided by noft STRIP x or s The option x on page 3 17 is equivalent to Binder STRIP SYMBOLS command The option s on page 3 12 is equivalent to STRIP command SYSTEM Use TACL SYSTEM command instead...

Page 157: ...10 pages For details on how the C run time library is linked see C Programs on page 2 10 Example 9 3 sets the INSPECT object file attribute to ON for the loadfile objfile Example 9 2 Linking Two Object Files in Binder and nld Less Simple Case Binder nld ADD FROM obja ADD FROM objb SELECT SEARCH SYSTEM SYSTEM CWIDE SET HEAP 20000 BYTES BUILD obja objb SYSTEM SYSTEM CRTLMAIN set heap_max 20000 obey ...

Page 158: ...s within the object file s memory space DUMPOFFSET is specified by the physical offset with the object file DUMPPROC is specified by the procedure name ENV ENV EXIT EXIT QUIT FC FC FILE FILE HELP HELP INFO LIST INFO INCLUDE CODE LISTPROC noft performs this function on a procedure level instead of on a code block level INFO INCLUDE DATA DUMPADDRESS noft performs this function on a address level ins...

Page 159: ...unction on a procedure level instead of on a code or data block level LIST XREF XREFPROC noft performs this function on a procedure level instead of on a code or data block level LMAP LISTPROC LOG LOG MODE SET CASE OBEY OBEY OUT OUT SHOW LISTPROC For noft environment parameter settings the ENV or SHOW options can be used For items applicable to native object files the LISTATTRIBUTE and LISTPROC op...

Page 160: ...Converting From Binder to nld and noft nld and noft Manual 520384 003 9 8 Comparing Binder Commands to noft Options ...

Page 161: ...es Message Type Description nld Stops Immediately nld Creates a Usable Object File Suppressible ERROR nld cannot do the requested task Yes No No ERROR nld cannot do the requested task No No No Warning nld might not have done what you expected No Yes Yes by noverbose Informational message Information that might help you No Yes Yes by noverbose Table 10 2 Warning and Informational Message Defaults E...

Page 162: ...t be confused with the symbol table that exists as part of an object file attribute The term attribute is used for two things Information found within loadfiles that can be set with set on page 3 13 or changed with change on page 3 4 There are different types of attributes some of which must be followed by numbers when specified on the command line some of which must be followed by the word on or ...

Page 163: ...not change the section to which a data item belongs The exception when nld moves data from bss to data can occur when building an SRL or user library declare declaration A symbol is said to be declared in an object file when it is a name that is listed in that object file as something visible to the linker A symbol that is declared might also be defined which means that the symbol physically exist...

Page 164: ...giving it an initial value depends on the language used it is beyond the scope of this manual to explain the syntax of specific languages ELF executable and linkable format This is the name for the object file format The two types of HP object files are called loadfiles and linkfiles entry vector This is an item found in an SRL or user library as part of the HP implementation of the way in which p...

Page 165: ...related to building object files for the system library GINFO table See TANDEM_GINFO on page 10 10 GINFO header This part of the object file refers to information at the beginning of the TANDEM_GINFO section global data The words global data can be used in different ways under different circumstances This might refer to data that is visible across separate compilations Alternatively it might refer...

Page 166: ...d it is beyond the scope of this manual to give advice related to building object files for system library large data Data is categorized as large or small The compiler decides if a given data item will be large or small See a more comprehensive discussion under small data library This term can mean either an archive or an SRL local symbol information local symbol table The local symbol table is p...

Page 167: ...f nld does not have permission to read a file you might need to alter the permissions on that file with the FUP SECURE command option Either a flag and its parameter s or a flag that has no parameters for example o filename rename oldname newname set SYSTYPE OSS verbose output file The name of the object file to be created by nld is specified with o on page 3 11 If not specified it defaults to AOU...

Page 168: ... or inconsistency involving the compiler or linker or it might be that code was written at HP in a special way that nld did not understand Again the problem should be referred to HP support for further analysis resident Procedures can be marked resident at compilation time meaning that they are intended to stay permanently in physical memory whereas other code can be swapped in and out at run time...

Page 169: ...essage the correction might be to recompile some or all of your files to use less small data SRLs and user libraries are not permitted to contain small data If a data item is defined more than once it must not be large one time and small another time It is also an error for a data item to be defined as large data and elsewhere declared as small data the reverse of this situation is not considered ...

Page 170: ...is visible across separate compilations suffix This refers to the last part of a filename in environments other than the Guardian environment By convention the suffix for an archive is a and for an SRL is srl nld is not sensitive to any other suffixes symbol The word symbol refers to something that could be either a procedure or a data item symbol information symbol table Object files contain symb...

Page 171: ...nce to a symbol that is a procedure or a data item is said to be unresolved when a symbol of that name is not defined in the same object file In other words the symbol must have been declared so that it could be referenced in the first place but it has not been defined See declare declaration on page 10 3 and define definition on page 10 4 user library UL A user library is a type of SRL as far as ...

Page 172: ... service provider Note This subsection shows error messages in the format that they appear on Guardian and OSS platforms that is they begin with this string ERROR number On a PC error messages begin with this string NLD ERROR number The text of error messages is the same on all platforms ERROR 1000 Cannot open the file named filename specified in hot_proc_list ERROR 1001 Reached end of hot_proc_li...

Page 173: ...umber in the hot_proc_list file filename ERROR 1005 A syntax error two periods within a procedure name was encountered on line line number in the hot_proc_list file filename ERROR 1006 A procedure name longer than 256 characters was encountered on line line number in the hot_proc_list file filename ERROR 1007 There was no pre_cache_size flag within the hot_proc_list file filename but the pri_cache...

Page 174: ...1011 The value attribute value was specified for the attribute named attribute name in a set or change flag but this attribute requires a value of either ON or OFF ERROR 1012 The value attribute value was specified for the attribute named attribute name in a set or change flag but this attribute requires a numerical value ERROR 1013 The value attribute value was specified for the SYSTYPE attribute...

Page 175: ... be specified for the change flag ERROR 1017 A change flag with an attribute name was found at the end of the command stream but a value and a filename must also be specified for the change flag ERROR 1018 A change flag with an attribute name and value was found at the end of the command stream but a filename must also be specified for the change flag ERROR 1019 A change flag with an attribute nam...

Page 176: ...022 A d_max_size flag was found in the command stream but a numerical value must be specified for the d_max_size flag and the next item in the command stream was item ERROR 1023 A d_slack flag was the last item found in the command stream but a numerical value must be specified for the d_slack flag ERROR 1024 A d_slack flag was found in the command stream but a numerical value must be specified fo...

Page 177: ...e e flag ERROR 1028 A e flag was found in the command stream but a procedure name must be specified for the e flag and the next item in the command stream begins instead with a hyphen ERROR 1029 An ev flag was the last item found in the command stream but a hexadecimal value must be specified for the ev flag ERROR 1030 An ev_max_size flag was the last item found in the command stream but a numeric...

Page 178: ...ck_percent flag was the last item found in the command stream but a numerical value must be specified for the ev_slack_percent flag ERROR 1035 An ev_slack_percent flag was found in the command stream but a numerical value must be specified for the ev_slack_percent flag and the next item in the command stream was item ERROR 1036 An export flag was the last item found in the command stream but a sym...

Page 179: ... but a symbol name and an SRL name must be specified for the import flag ERROR 1041 An import flag was found in the command stream but a symbol name and an SRL name must be specified for the import flag and the next item in the command stream begins instead with a hyphen ERROR 1042 An import flag with a symbol name was found at the end of the command stream but an SRL name must also be specified f...

Page 180: ...d stream begins instead with a hyphen ERROR 1047 A L or libvol flag was found at the end of the command stream but a directory or subvolume name must be specified for the libvol flag ERROR 1048 A L or libvol flag was found in the command stream but a directory or subvolume name must be specified for the libvol flag and the next item in the command stream begins instead with a hyphen ERROR 1049 A l...

Page 181: ...ut a filename must be specified for the o flag ERROR 1053 A o flag was found in the command stream but a filename must be specified for the o flag and the next item in the command stream begins instead with a hyphen ERROR 1054 A prev flag was found at the end of the command stream but a filename must be specified for the prev flag ERROR 1055 A prev flag was found in the command stream but a filena...

Page 182: ...mmand stream but a second symbol name must also be specified for the rename flag ERROR 1059 A rename flag with a symbol name was found in the command stream but a second symbol name must also be specified for the rename flag and the next item in the command stream begins instead with a hyphen ERROR 1060 A strip flag was found at the end of the command stream but a filename must be specified for th...

Page 183: ... instead with a hyphen ERROR 1064 An srl_fixup flag was found at the end of the command stream but a filename must be specified for the srl_fixup flag ERROR 1065 An srl_fixup flag was found in the command stream but a filename must be specified for the srl_fixup flag and the next item in the command stream begins instead with a hyphen ERROR 1066 A set flag was the last item found in the command st...

Page 184: ...070 A t_max_size flag was found in the command stream but a numerical value must be specified for the t_max_size flag and the next item in the command stream was item ERROR 1071 A t_slack flag was the last item found in the command stream but a numerical value must be specified for the t_slack flag ERROR 1072 A t_slack flag was found in the command stream but a numerical value must be specified fo...

Page 185: ...n the command stream but a symbol name must be specified for the y flag ERROR 1076 A y flag was found in the command stream but a symbol name must be specified for the y flag and the next item in the command stream begins instead with a hyphen ERROR 1077 Unrecognized flag item ERROR 1078 Only 100 y flags are permitted ERROR 1079 It is incorrect to specify other flags along with strip flags ERROR 1...

Page 186: ...wed to have on the command line are SRL names l or lib flags L or libvol flags libname verbose and noverbose flags ERROR 1082 It is incorrect to attempt cache optimization when you also specify either the ul or srl flags ERROR 1083 It is incorrect to attempt cache optimization when you also specify the r flag for building a non executable file ERROR 1084 It is incorrect to specify both the srl and...

Page 187: ...er library file ERROR 1088 It is incorrect to specify both the prev flag and the ul flag the prev flag may only be used with the srl flag ERROR 1089 It is incorrect to specify both the syslib flag and the ul flag ERROR 1090 It is incorrect to specify both the srl_name flag and the ul flag the srl_name flag may only be used with the srl flag ERROR 1091 You are trying to build a new version of an SR...

Page 188: ... 1094 You specified the prev flag in the wrong circumstances prev may only be specified when you specify srl without r ERROR 1095 You specified the srl flag but not the d flag When you specify srl it is always necessary to also specify d ERROR 1096 When you specify srl you must also specify srl_name unless the SRL name will be obtained from the file specified in a prev flag or in a use_srl_options...

Page 189: ...r on the command line with the srl_name flag or found in the file specified with the use_srl_options flag does not match the SRL name found in the previous version of the SRL specified with the prev flag ERROR 1101 You specified prev without also specifying d but the previous version of the SRL had no data section in it so in this case you must also specify the d flag ERROR 1102 You specified both...

Page 190: ...us version of the SRL ERROR 1106 You specified both the prev and the t_max_size flags but the value that you specified in the t_max_size flag is different from that found in the previous version of the SRL ERROR 1107 You specified both the prev and the ev_max_size flags but the value that you specified in the ev_max_size flag is different from that found in the previous version of the SRL ERROR 11...

Page 191: ...he SRL but in the previous version this was not the name of a procedure This incompatibility is considered an error ERROR 1113 You are trying to build a new version of an SRL with the prev flag and there is now an ordinary data item named n A symbol of this name was also exported in the previous version of the SRL but in the previous version this was not the name of an ordinary data item This inco...

Page 192: ...bided by these rules You can run NLD with the additional flags show_internal_reloc and verbose to get a list of which object files have broken the rules ERROR 1117 You specified the syslib flag but not the ev flag When you specify syslib it is always necessary to also specify ev ERROR 1118 You specified the srl flag to build an SRL but you did not specify the ev flag When you build an SRL it is al...

Page 193: ... for the res_start flag within the hot_proc_list file was only address 4 ERROR 1122 You specified the srl flag to build an SRL and you also specified old_elf_format You did not specify the t flag but when you build an SRL with old_elf_format it is always necessary to specify t ERROR 1123 The text and entry vector segments overlap The text segments meaning non resident plus resident text go from ad...

Page 194: ...8 More than one procedure has the MAIN attribute ERROR 1129 The text and data segments overlap The text segments meaning non resident plus resident text go from address 1 to address 2 but the data segment starts at address 3 Check the values that you specified for the t and d flags ERROR 1130 The text and data segments overlap The data segment meaning initialized plus uninitialized data goes from ...

Page 195: ...han that of NLD itself This version of NLD supports version numbers up to number 1 but this object file contains version number number 2 ERROR 1137 The Guardian file system error number number occurred while trying to open the file named filename ERROR 1138 In the Guardian file system object files are required to have file code 700 but the file named filename does not have file code 700 ERROR 1139...

Page 196: ... archive because it was encountered while processing a l lib or import flag ERROR 1142 The file named filename is not an SRL but it is required to be an SRL because its suffix is srl ERROR 1143 The file named filename is not an archive but it is required to be an archive because its suffix is a ERROR 1144 The file name filename was specified on the command line but this file does not exist ERROR 1...

Page 197: ...succeed The SRL filename that initiated the search was filename An SRL was required because this name was specified either in an import flag or else in a l or lib flag given together with the srl_fixup flag ERROR 1148 The search to find an archive did not succeed The archive filename that initiated the search was filename An archive was required because the bstatic flag is currently in effect ERRO...

Page 198: ...ired to be either an SRL or an archive because it was found by searching for the filename specified in a l or lib flag ERROR 1153 The SRL named filename appears to be corrupted because it does not have a section header for the TANDEM_INFO section ERROR 1154 The SRL named filename appears to be corrupted because it does not have a section header for the TANDEM_GINFO section ERROR 1155 The SRL named...

Page 199: ...r ERROR 1159 The object file named filename appears to be corrupted because it has too many sections listed in the COFF file header ERROR 1160 Object files are either executable or non executable Only non executable object files can be used as NLD input files However filename is executable ERROR 1161 The input object file named filename contains object RTDU s but NLD s input object files are non e...

Page 200: ...d the srl or ul flag but the input object file named filename was previously build by NLD without the srl flag This is not allowed unless you also specify the no_data_rearrange flag ERROR 1165 The input object file named filename appears to be corrupted because it has more than one name section ERROR 1166 The input object file named filename appears to be corrupted because COFF section header numb...

Page 201: ...ect file named filename appears to be corrupted because there is a bad value for the issBase field in a file descriptor table entry ERROR 1172 The input object file named filename appears to be corrupted because there is a bad value for the rss field in a file descriptor table entry ERROR 1173 The input object file named filename appears to be corrupted because there is a bad value for the asym is...

Page 202: ...tes This input object file may be corrupted ERROR 1179 NLD found an out of range value number 1 for the field named r_symndx for entry number number 2 in the relocation table for the name section while processing the input object file named filename This should have been a valid index into this object file s external symbol table This object file appears to be corrupted ERROR 1180 The field named ...

Page 203: ...utside the size of the corresponding literal pool section or is not a multiple of 4 This occurred at entry number number in the relocation table for the name section in the input object file named filename and the calculated literal pool offset was number bytes ERROR 1185 The object file named filename appears to be corrupted because the field named r_symndx for entry number number in the relocati...

Page 204: ...med filename appears to be corrupted because there is a bad value for the ilineBase field in file descriptor table entry number number ERROR 1192 The input object file named filename appears to be corrupted because there is a bad value for the cline field in file descriptor table entry number number ERROR 1193 The input object file named filename appears to be corrupted because there is a bad valu...

Page 205: ...able entry number number ERROR 1199 The input object file named filename appears to be corrupted because there is a bad value for the isym field in file descriptor table entry number number ERROR 1200 The input object file named filename appears to be corrupted because there is a bad value in word number number of the auxiliary symbol table This word was expected to be a pointer to the stEnd entry...

Page 206: ...is number 2 Previous BYTES value is number 3 ERROR 1206 You are trying to build a new version of an SRL with the prev flag and there is now a procedure named name whose entry vector uses number 1 bytes However in the previous version of the SRL the entry vector for this procedure used number 2 bytes This incompatibility is considered an error ERROR 1207 The input object file named filename appears...

Page 207: ...jump gateway This happens in the input object file named filename ERROR 1212 The object file named filename contains a form of code generation that NLD cannot handle There is a J or JAL instruction at virtual address address 1 that has a target address of address 2 within the same object file This target address has already been inserted into the instruction rather than using the relocation table ...

Page 208: ...upted because the name section at byte offset number 1 has a data word containing the value number 2 that is not within the virtual address range of any procedure in the procedure descriptor table The value is listed in the name relocation table at index number 3 as a relocatable reference to a code address ERROR 1216 The object file named filename contains a form of code generation that NLD canno...

Page 209: ...the output file that NLD wants to create ERROR 1222 The Guardian file system error number number occurred while trying to rename the temporary output file named filename 1 to the final output file named filename 2 ERROR 1223 An error occurred while trying to create and open a temporary output file named filename error number ERROR 1224 An error occurred while writing to the temporary output file e...

Page 210: ... strip flag but this file is not executable Only executable object files can be stripped with the strip flag ERROR 1230 The file named filename which was specified for a strip flag appears to be corrupted because it contains an inconsistent subset of the expected symbols information There are section headers for some but not all of the mdebug symtab and strtab sections ERROR 1231 The file named fi...

Page 211: ... be used on executable ELF files ERROR 1235 The file named filename was specified for a change flag but this file is not executable The attribute attribute name can be changed only in executable files ERROR 1236 The file named filename was specified for a change flag but this file appears to be corrupted because it does not have a section header for the TANDEM_INFO section ERROR 1237 An write erro...

Page 212: ...because we never generate code that jumps to an offset relative to the start of a procedure ERROR 1241 The last entry in the fixup list for either the code or data segment is a relocation type R_MIPS_HI16 but this is incorrect because it must be followed by a R_MIPS_LO16 ERROR 1242 Fixup list entry number number for either the code or data segment specifies a fixup of type R_MIPS_HI16 but the next...

Page 213: ...e error number ERROR 1246 More than one srl_fixup flag was specified ERROR 1247 Cannot open the file named filename specified in the srl_fixup flag ERROR 1248 The file named filename was specified for the srl_fixup flag but this file is an archive The srl_fixup flag only applies to individual executable object files ERROR 1249 The file named filename was specified for the srl_fixup flag but this i...

Page 214: ...e TANDEM_GINFO section ERROR 1253 While processing SRL s for the srl_fixup flag the SRL name name was encountered more than once ERROR 1254 The file specified for the srl_fixup flag requires an SRL whose SRL name is filename but no SRL of this name was found ERROR 1255 The symbol named name is supposed to come from the SRL named filename but this SRL does not export a symbol of this name so the sr...

Page 215: ...table entry for the symbol named name ERROR 1260 Cannot open the file named filename ERROR 1261 During the search being executed for a l or lib or import flag NLD encountered but could not open the file named filename ERROR 1262 The input object file named filename appears to be corrupted because there is a relocatable reference from a code location to symbol number number and this reference looks...

Page 216: ...as found at the end of the command stream but a filename must be specified for the use_srl_options flag ERROR 1265 A use_srl_options flag was found in the command stream but a filename must be specified for the use_srl_options flag and the next item in the command stream begins instead with a hyphen ERROR 1266 More than one use_srl_options flag was specified ERROR 1267 The keep_srl_options flag is...

Page 217: ...ommand stream but a numerical value must be specified for the cache_size flag ERROR 1272 A cache_size flag was found in the command stream but a numerical value must be specified for the cache_size flag and the next item in the command stream was name ERROR 1273 The value value was specified for the FLOATTYPE attribute in a set or change flag but this attribute requires a value of IEEE_FLOAT NEUTR...

Page 218: ...chive The elf_check flag only applies to individual executable object files ERROR 1279 The file named filename was specified for the elf_check flag but this is not an ELF file The elf_check flag can only be used on executable ELF files ERROR 1280 The file named filename was specified for the elf_check flag but this file is not executable The elf_check flag can only be used on executable files ERRO...

Page 219: ...ecause the TANDEM_GINFO field names fields have inconsistent values ERROR 1286 The file named filename appears to be corrupted because the TANDEM_GINFO field name field has a bad value ERROR 1287 The file named filename appears to be corrupted because the ProgHdr number field name field has a bad value ERROR 1288 The file named filename appears to be corrupted because the ElfHdr field names fields...

Page 220: ...le system error number number occurred while trying to resolve the name name ERROR 1294 The Guardian file system error number number occurred while trying to isolate the volume from file name filename ERROR 1295 The Guardian file system error number number occurred while trying to isolate the subvolume from file name filename ERROR 1296 The Guardian file system error number number occurred while t...

Page 221: ...ou specified that the symbol named name was to be imported from an SRL but this symbol was declared as small data in the object file named filename That is an error because an SRL cannot contain small data ERROR 2001 The symbol named name was located in an SRL named filename 1 but this symbol was declared as small data in the object file named filename 2 That is an error because an SRL cannot cont...

Page 222: ...ct files that declared this data item run NLD again with the additional flags y symbol and verbose ERROR 2004 The symbol name was specified to be the main entry point but this is not the name of a symbol that is located in user code within this program ERROR 2005 You specified the coff flag but that is not allowed because the input object files contained RTDU s When you are linking together object...

Page 223: ... allowed with syslib The types of data that exist in an object file depend on your source code and your compilation flags ERROR 2010 You specified the srl or ul flag but the input object file named filename contains small data This is an error because SRL s and UL s cannot contain small data ERROR 2011 You specified the srl or ul flag but the input object file named filename contains literal pools...

Page 224: ...t relocate a gp relative reference to the symbol named name because the target address is too far away from the value of the gp register The address of the symbol is address This occurred for entry number number 1 in the relocation table for the section name section of the input object file named filename and the reference is at byte offset number 2 within that section The compiler should not use ...

Page 225: ...p relative reference to one of the literal pool sections because the target address is too far away from the value of the gp register even though it is correct to use gp relative addressing for literal pools The address of the data being referenced is address This occurred for entry number number 1 in the relocation table for the section name section of the input object file named filename and the...

Page 226: ...named filename 1 but as large data in filename 2 ERROR 2025 The data item named name was externally declared as small data in the object file named filename but in another object file it was defined to be large data This is considered an error since it can lead to incorrect relocation For a list of all the object files that declared this data item run NLD again with the additional flags y symbol a...

Page 227: ... flag but the input object file named filename contains a reference to the large uninitialized data item named name which is not allowed with syslib The types of data that exist in an object file depend on your source code and your compilation flags ERROR 2030 You specified the syslib flag but the input object file named filename contains a reference to the large uninitialized data section which i...

Page 228: ...ass Common and SCommon not suported for variable name from object file filename ERROR 2035 A NS_extent_size flag was the last item found in the command stream but a numerical value must be specified for the NS_extent_size flag ERROR 2036 A NS_extent_size flag was found in the command stream but a numerical value must be specified for the NS_extent_size flag and the next item in the command stream ...

Page 229: ...e and noverbose defaults see Table 10 2 on page 10 1 ERROR 2039 A NS_max_extents flag was found in the command stream but a numerical value must be specified for the NS_max_extents flag and the next item in the command stream was name ERROR 2040 The numeric value for NS_max_extents must be between 16 and 900 ERROR 2041 The SRL name srl name cannot be longer than number characters ERROR 2042 The hy...

Page 230: ... 10002 The value specified in the kseg0 flag was rounded up to number WARNING 10003 The cache_size flag is being ignored because NLD now supports a different form of cache optimization and the old form of cache optimization is obsolete WARNING 10004 You specified that the symbol named name should be renamed but this symbol was not defined in NLD s input files so this rename flag has been ignored W...

Page 231: ... WARNING 10009 The archive named filename is being ignored because it has no symbol table WARNING 10010 The archive named filename is being ignored because its symbol table is not a native mode symbol table WARNING 10011 The archive named filename is being ignored because its symbol table does not have a string table WARNING 10012 You specified that the symbol named name should be renamed This sym...

Page 232: ...dure named name was specified as a hot procedure for the cache optimization and there is more than one procedure of this name Perhaps some of these copies are unneeded copies But if some of these are static procedures so that all the copies are needed then the cache optimization will be applied to all the copies WARNING 10016 There were some names that had to be truncated to 256 characters in orde...

Page 233: ...bject files that declared this symbol run NLD again with the additional flags y symbol and verbose WARNING 10022 You specified a procedure named name in the list of hot procs for the cache optimization but no procedure of this name exists in the program The specification of this procedure in the hot proc list has been ignored WARNING 10023 You specified a subprocedure named name 1 within the proce...

Page 234: ...porting readonly data which means that if you use the prev flag to build a new version of this SRL in the future it probably will not be linkage equivalent WARNING 10028 Some exported data items have changed size and or been assigned a different address compared to the previous version of this SRL The following is a list of such differences at most ten data items will be shown and long names will ...

Page 235: ...IEEE_FLOAT and TANDEM_FLOAT have been linked together with an explicit set FLOATTYPE flag of attribute value WARNING 10035 Resident version of symbol name in object file filename 1 used in lieu of non resident version from object file filename 2 WARNING 10036 The symbol name in object file filename 1 was previously resolved to SRL filename 2 object file name filename 3 It could also be resolved to...

Page 236: ...med to filename 2 WARNING 10041 Could not name output file to name requested Output file name filename 1 was changed to filename 2 WARNING 10042 The libname string is too long and has been truncated to 48 bytes WARNING 10043 The srl_name srl name is too long and has been truncated to number bytes WARNING 10044 Program containing code compiled with C versionx pragma may conflict with the SRL srl na...

Page 237: ...messages are as they appear on Guardian and OSS platforms that is they begin with this string INFORMATIONAL MESSAGE number On a PC error messages begin with this string NLD INFORMATIONAL MESSAGE number INFORMATIONAL MESSAGE 20000 The old_elf_format flag will soon go away INFORMATIONAL MESSAGE 20001 The amount of space actually required by the non resident text segment during the cache optimization...

Page 238: ...ue of G should lead to the same problem INFORMATIONAL MESSAGE 20008 There was a problem related to GP relative addressing but in fact the amount of data that would be put into small data even for a G value of 0 was larger than 64K bytes so any value of G should lead to the same problem INFORMATIONAL MESSAGE 20009 There was a problem related to GP relative addressing but in fact all the data will f...

Page 239: ...nt and at the same addresses as before It is not identical with the previous SRL in the sense that some new symbols may have been exported this time and or the sizes of some exported data items may have changed INFORMATIONAL MESSAGE 20015 The data item named name 1 is defined more than once one example is in the object file named filename where it is name 2 INFORMATIONAL MESSAGE 20016 Since filena...

Page 240: ...SSAGE 20023 The new version of the SRL is compatible with the previous version in the sense that all the previous exports are still present possibly with some new ones but the new version is not upward linkage equivalent because some previously exported data items have changed their addresses INFORMATIONAL MESSAGE 20024 The new version of the SRL is not compatible with the previous version because...

Page 241: ...number The next message will indicate the file name that will be used for the new output file INFORMATIONAL MESSAGE 20029 Attempts to rename existing output file filename were not successful The last file system error was error number The next message will indicate the file name that will be used for the new output file INFORMATIONAL MESSAGE 30000 The following program limits would have been creat...

Page 242: ...nld Diagnostic Messages nld and noft Manual 520384 003 10 82 Informational Messages ...

Page 243: ...emory probably because noft has an internal problem Recovery Give the object file being examined and the series of commands that you used to your service provider for analysis Cause This supplementary message follows another fatal error message that describes the specific nature of the problem Recovery Correct the problem that the other message describes Cause A file input or output error occurred...

Page 244: ... object file being examined and the series of commands that you used to your service provider for analysis Cause noft cannot allocate memory probably because noft has an internal problem Recovery Give the object file being examined and the series of commands that you used to your service provider for analysis Cause Stated in message Recovery Reenter the noft run command specifying only one object ...

Page 245: ...ft has an internal problem Recovery Give the object file being examined and the series of commands that you used to your service provider for analysis Cause noft cannot receive input from the terminal Recovery Restart noft Examine the object file from a reloaded or different terminal Use an obey file instead of typing directly to the terminal Cause The specified flag command name was not accepted ...

Page 246: ...r service provider for analysis Cause noft cannot allocate memory probably because noft has an internal problem Recovery Give the object file being examined and the series of commands that you used to your service provider for analysis Data Errors Cause The object file was stripped of its symbol table Recovery Rebuild the object file with symbols information FATAL ERROR 16 Unable to continue getti...

Page 247: ...ct file as a loadfile Cause LISTPROC could not find the specified procedure Recovery Use LISTPROC to see what procedures are available see LISTPROC or LP on page 5 27 Cause LISTCOMPILERS could not find the appropriate source file This might be the result of setting limits with SET SCOPEPROC or SET SCOPESOURCE Recovery Use SHOW on page 5 47 to see if there is any scoping If there is either reset th...

Page 248: ...See LISTPROC or LP on page 5 27 Cause You used SET SCOPESOURCE or SET SCOPEPROC to narrow the scope of noft options to a single source file or a single procedure No symbols were found in that scope Recovery Remove the scoping of the source with SET SCOPESOURCE or SET SCOPEPROC See SET on page 5 42 Cause Stated in message Recovery Stated in message Cause Stated in message Recovery Stated in message...

Page 249: ...ROR 1010 Did not find any external symbols belonging to name check options and full external table DATA ERROR 1011 Did not find any external symbols defined in object file check options and full external table DATA ERROR 1012 Did not find any indirect file symbols belonging to source file check options and full indirect table DATA ERROR 1013 Did not find any runtime procedures belonging to procedu...

Page 250: ...t file Cause No source files are associated with this object file Recovery Rebuild the object file with symbols information Cause The specified object file was not compiled with a native compiler Recovery Rebuild the object file with a native compiler Cause The specified object file is not open Recovery Use FILE or F on page 5 15 to specify the object file and then reissue the desired command DATA...

Page 251: ...ISTOPTIMIZE or LO on page 5 26 Cause The object file does not have complete symbols information Recovery Rebuild the object file with complete symbols information Cause The object file has been stripped of all symbol tables Recovery Rebuild the object file with complete symbols information Cause The first few bytes of the object file are corrupt Recovery Rebuild the object file DATA ERROR 1021 No ...

Page 252: ...re is no symbols information Recovery Rebuild the object file with complete symbols information Cause The specified number is not valid for this source file Recovery In the list of procedures find the correct index number for the procedure Cause Stated in message Recovery Check the list of procedures to see if the procedure is actually in the object file If not rebuild the object file DATA ERROR 1...

Page 253: ...ry Do either of the following Recompile the newer source file and run noft again on the new object file Specify a different source file by changing the location where noft looks for the source files using the appropriate commands for your environment Cause noft cannot find the specified addresses in the object file Recovery Ensure that the addresses exist in the object file and rebuild the object ...

Page 254: ...ve the object file being examined and the series of commands that you used to your service provider for analysis Cause noft cannot allocate memory probably because noft has an internal problem Recovery Give the object file being examined and the series of commands that you used to your service provider for analysis Cause noft could not find the opcode for the last address Recovery Ensure that the ...

Page 255: ...edure is in the object file If not rebuild the object file Cause Either the specified file is not present or it is neither a text file nor an edit file Recovery Ensure that the path to the obey file is correct and that the obey file is a text file in the OSS environment and on UNIX workstations or an edit file in the Guardian environment Cause Either the loadfile is stripped or the procedure table...

Page 256: ...es are not corrupt Cause noft cannot find an instruction for the opcode at this address Recovery Ensure that noft is looking at a code section with ICODE Cause One of the following has an invalid format The directory pathname specified by CD on page 5 5 The system node name or subvolume name specified by SYSTEM or VOLUME on page 5 48 Recovery Ensure that the specified directory system or subvolume...

Page 257: ... items found in the scope was zero Recovery Either use RESET on page 5 41 to reset the scope to its default or use SET on page 5 42 to change the scope To see the current scope use SHOW on page 5 47 Cause LISTUNREFERENCED or LUR on page 5 32 was limited by either SET SCOPEPROC or SET SCOPESOURCE An error occurred while attempting to display the information Recovery Use RESET on page 5 41 to reset ...

Page 258: ...y Cause The Guardian file system error number occurred when the Guardian function FILENAME_DECOMPOSE_ tried to extract the node volume and subvolume on the current directory Recovery Use the SYSTEM or VOLUME on page 5 48 to specify a valid subvolume Cause The Guardian file system error number occurred when the Guardian function FILENAME_RESOLVE_ tried to build a directory name from existing pieces...

Page 259: ...th of the pathname plus the length of the filename was too long for the destination array Only the filename part will be used Recovery Use CD on page 5 5 to set a shorter pathname Cause You used LISTUNREFERENCED or LUR on page 5 32 while SET SCOPEPROC was active These commands are incompatible if the scope has been set to a specific procedure then the procedure must be resolved Rather than show an...

Page 260: ...in message Recovery Use FILE or F on page 5 15 to open an object file and then reissue the command Cause The specified file was expected to be a COFF file but it is not Recovery Specify a COFF file Cause The specified object file was created with later versions of native mode compilers and linker than noft supports therefore noft might not understand the object file format Recovery Use a newer ver...

Page 261: ... Cause The undocumented TANDEMINFO command was used on a COFF file This command is only meaningful for ELF files The logic for the undocumented AOUTHDR command was called instead Recovery Do not use the command TANDEMINFO on COFF files Cause LISTPROC or LP on page 5 27 or XREFPROC or XP on page 5 49 could not find the specified procedure Recovery Use LISTPROC or XREFPROC to see what procedures are...

Page 262: ...e data has been transferred there will be no additional delays for this file Recovery If numerous FILE commands will be done for files on a remote node it might be faster to execute noft on the remote node Cause This error can occur only in the Guardian environment Recovery Check the result in the Guardian Procedure Calls Reference Manual see SEGMENT_ALLOCATE_ Based on that information take approp...

Page 263: ...tinue to process that section This version of noft is probably older than the object it is analyzing Recovery Use a newer version of noft Cause You are using XREFPROC or XP on page 5 49 and the object file is corrupt in an unexpected way noft is attempting to report a procedure name for a cross reference but cannot find the expected matching symbol in the external symbol table Recovery noft contin...

Page 264: ... for the last command entered see FC on page 5 14 Cause The last address specified is lower than the first address specified Recovery Specify an address range from low address to high address Cause The scope for the procedure or source file previously selected does not intersect with the address range specified in the last command Recovery Release the scoping restriction previously enabled with SE...

Page 265: ...n to the command Recovery Ensure that the syntax of the command is correct Cause This error occurs for the undocumented command RELOC It indicates that the procedure given for the SET SCOPEPROC command could not be converted from its ordinal back to a string Recovery RESET SCOPEPROC might fix the problem see RESET on page 5 41 SYNTAX ERROR 3005 Address specification not properly formed SYNTAX ERRO...

Page 266: ...icolon between the commands in question For a list of commands that begin with DUMP and LIST see Table 5 1 noft Flag Summary on page 5 1 Cause The number of bytes or words specified in an address or offset range must be in decimal format Recovery Recompute any numbers in decimal format Cause The number specified for HISTORYBUFFER or HISTORYWINDOW is too small less than zero or too large larger tha...

Page 267: ...Correct the command syntax specifically the parameter descriptions Cause noft cannot understand the specified command Recovery Correct the command syntax Cause A parameter is missing for the specified command Recovery Correct the command syntax specifically the parameter descriptions SYNTAX ERROR 3015 Incorrect path specification syntax SYNTAX ERROR 3016 Invalid formatting parameter command ignore...

Page 268: ...the SET SCOPEPROC command was given but there is no symbol table Recovery Either use RESET on page 5 41 to reset the scope to its default or use SET on page 5 42 to change the scope To see the current scope use SHOW on page 5 47 Cause This error occurs for the undocumented GINFOPUBLIC command It indicates that there was no information for the scope set with the SET SCOPESOURCE command Recovery Eit...

Page 269: ...n page 5 47 Cause The filename specified in the OBEY on page 5 39 is not an obey file Recovery Change the filename to that of an obey file Cause If the message refers to a procedure the scope set for dumping does not include the specified range If the message refers to an object file the object file does not contain the addresses or offsets specified Recovery If the message refers to a procedure e...

Page 270: ...in the object file and that its name is spelled correctly Use LISTPROC SET SCOPESOURCE source file where source file is the name of the source file that contains the procedure or the number of the source file See LISTPROC or LP on page 5 27 and SET on page 5 42 Cause noft does not allow obey files to call themselves recursively circularly Recovery Remove the loop in the obey files Cause SET requir...

Page 271: ...e source file is located use the appropriate commands for your environment Cause noft cannot find the specified source filename Recovery Ensure that the specified source file exists and its name is spelled correctly Use LISTSOURCE to see a list of all the source files see LISTSOURCE or LS on page 5 29 Cause noft cannot find the specified source file number Recovery Ensure that specified procedure ...

Page 272: ...page 5 48 Cause The VOLUME command works only in the Guardian environment Recovery In the OSS environment use CD on page 5 5 Cause noft cannot allocate memory probably because noft has an internal problem Recovery Give the object file being examined and the series of commands that you used to your service provider for analysis SYNTAX ERROR 3038 Specified range not within a text section SYNTAX ERRO...

Page 273: ...at the command is available and spelled correctly see HELP or on page 5 17 Cause This error occurs for the undocumented GINFOSITE and SRLINFO commands It indicates that no information was found within the limits of the scope Recovery Either use RESET on page 5 41 to reset the scope to its default or use SET on page 5 42 to change the scope To see the current scope use SHOW on page 5 47 Cause The c...

Page 274: ...see LISTPROC or LP on page 5 27 and LISTOPTIMIZE or LO on page 5 26 Cause While trying to parse the procedure function name or number noft discovered that the procedure function does not exist in the current scope Recovery Use SHOW on page 5 47 to see the current SCOPE value Either use SET on page 5 42 to change the scope use RESET on page 5 41 to reset the scope or correct the procedure name Caus...

Page 275: ...SET CASE expects ON or OFF see SET on page 5 42 Recovery Supply one of the these two arguments to the SET CASE command Cause This error occurs for some of the undocumented commands It indicates that the scope could not be displayed as a string This might mean that symbol table information is missing Recovery Recompile the module with symbols Cause Stated in message Recovery Use the LISTPROC comman...

Page 276: ... LINES command an integer in the range 0 through 32 767 see SET on page 5 42 Cause In SYSTEM or VOLUME on page 5 48 the value for node volume or subvolume was invalid Recovery Give the SYSTEM or VOLUME option a valid node volume and subvolume Cause In SYSTEM or VOLUME on page 5 48 the value for node volume or subvolume was too long Recovery Give the SYSTEM or VOLUME option a valid node volume and ...

Page 277: ...use In SYSTEM or VOLUME on page 5 48 the combination of node volume and subvolume was invalid for example VOLUME VOL1 SUBVOL2 FILE3 Recovery Give the SYSTEM or VOLUME option a valid combination of node volume and subvolume SYNTAX ERROR 3064 Only subvolume level and above allowed ...

Page 278: ...noft Diagnostic Messages nld and noft Manual 520384 003 11 36 Syntax Errors ...

Page 279: ...ure Errors and Messages Manual Cause This is an advisory message Object files for the NonStop servers are linked together using the linking program Binder TNS R object files are linked together using the linking utility nld ar attempts to build a symbol table for the archive so that the linking program can know the archive contents A different symbol table is required for each linking program so a...

Page 280: ...e file that is too large Cause When building an archive in the Guardian environment each member file must be an odd unstructured disk file In particular Edit format code 101 files are not allowed in archives Recovery Rebuild the archive excluding files that are of invalid types Cause An I O error occurred when the specified archive was being closed prior to constructing the archive symbol table Re...

Page 281: ...s Cause An I O error occurred in the Guardian environment when ar attempted to set the file permissions on the specified archive Recovery Use the FUP utility to look at the permissions on the archive and make any corrections needed Cause When running in the Guardian environment ar encountered an error closing the specified archive Recovery Correct the error condition and rebuild the archive Cause ...

Page 282: ...file if created will not be usable by nld Recovery Break the archive into several smaller archives Cause ar detected inconsistencies in the object file member and cannot finish its operation The archive symbol table is unusable by nld Recovery Either remove the object file member from the archive file or obtain a valid copy of the object file and repeat the ar operation Cause An error occurred dur...

Page 283: ...ither purge it before using ar or be sure not to use the C option on the ar command Cause The specified archive has an invalid file format Recovery Rebuild the archive Cause When running in the Guardian environment ar does not allow files to be extracted to the OSS file space Recovery Specify a location in the Guardian file space where members can be extracted Cause The file member specified in th...

Page 284: ...ed is specified in the command Reenter the command with the correct number of operands Cause One of the listed options is required Recovery Reenter the command correctly Cause Only one positional option is allowed in an ar command Recovery Reenter the command correctly Cause The specified position operand is not in the archive The t option can be used to find out what members exist in the archive ...

Page 285: ...ar Diagnostic Messages nld and noft Manual 520384 003 12 7 Cause The flag specified with the W option is not recognized by ar Recovery Reenter the command correctly W option is not a recognized flag ...

Page 286: ...ar Diagnostic Messages nld and noft Manual 520384 003 12 8 ...

Page 287: ... The number of passengers getting on is limited by the number of available seats on the bus and the number of passengers at the bus stop There might not be enough passengers at the bus stop to fill the bus or there might be more passengers at the bus stop than available seats After the bus is loaded the number of people remaining at the bus stop is calculated At the last bus stop the number of peo...

Page 288: ...files Module Header File GLOBALSH MODULE1H MODULE2H UTILH MAINC X X X MODULE1C X X X MODULE2C X UTILC X Example A 1 Header File GLOBALSH With Edit Line Numbers 0 001 define BUS_STOP_CAPACITY 50 002 define BUS_CAPACITY 44 003 define MAXSTOPS 5 004 01 1 1 extern long bus_stop_array 2 extern long passengers_on_bus Example A 2 Header File MODULE1H With Edit Line Numbers 0 1 2 5 void initialize long 6 ...

Page 289: ... chance that the same random numbers will come up each time the program runs The initialize function sets each element of the bus stop array to a random number from 0 through 127 The random numbers are the results of the rand function bitwise ANDed to the hexadecimal number 0x7F If a random number which represents the number of people at a bus stop is greater than the DEFINE for the bus stop capac...

Page 290: ...g stops 4 4 01 long counter 4 02 long passenger_count 4 1 5 bus_stop_array long malloc stops sizeof long 5 1 seed_random_number 6 for counter 0 counter stops counter 6 01 6 02 passenger_count 0x7F rand 6 03 while passenger_count BUS_STOP_CAPACITY 6 04 passenger_count 0x7F rand 6 05 6 1 bus_stop_array counter passenger_count 7 8 initialize 9 17 void wrapup long stops 18 19 long counter 19 01 19 1 p...

Page 291: ...lt of the rand function bitwise ANDed to the hexadecimal number 0x7F and is in the range from 0 through 127 If the random number which represents the number of people leaving the bus is greater than the number of passengers on the bus the rand function is called until it returns a value in the desired range Example A 7 Source Module MODULE2C With Edit Line Numbers 1 pragma nolist 1 1 include stdli...

Page 292: ...1L MODULE1O OPTIMIZE 0 SYMBOLS NMC IN MODULE2C OUT MODULE2L MODULE2O OPTIMIZE 0 SYMBOLS Compile the user library UTILC with this command NMC IN UTILC OUT UTILL UTILO OPTIMIZE 0 SYMBOLS SRL The only difference for compiling the user library is the inclusion of the pragma SRL Example A 8 User Library UTILC With Edit Line Numbers 1 pragma nolist 1 1 include stdlibh 2 include timeh 3 pragma list 3 1 i...

Page 293: ...ed to link the modules of the Example Program on page A 1 and make the program executable with the name EXAMPLE1 The command in Example A 10 includes the module CRTLMAIN C run time library main which C programs need to give the program an executable main function The SRL libraries ZCRESRL and ZCRTLSRL allow nld to link function calls to the correct addresses in the SRLs The full name of the user l...

Page 294: ... of people on bus at last stop 38 Passengers remaining at each bus stop Bus Stop Passenger Count 1 1 2 19 3 23 4 21 5 0 3 run example1 Number of people on bus at last stop 35 Passengers remaining at each bus stop Bus Stop Passenger Count 1 0 2 0 3 0 4 0 5 0 4 run example1 Number of people on bus at last stop 21 Passengers remaining at each bus stop Bus Stop Passenger Count 1 0 2 0 3 0 4 0 5 0 5 ru...

Page 295: ...tion tells noft which file to examine in Example A 12 the file to be examined is MAINO When the file is successfully opened noft returns the name of the file the file format and the result of resetting the scope and case sensitivity LISTATTRIBUTE The LISTATTRIBUTE option returns basic information about the file In Example A 13 the program is not executable so not much information is available Exam...

Page 296: ...name especially for C function names that are stored in mangled form Name Function name If the function name was a C mangled name an entry showing the demangled name is also shown as in Example 5 18 on page 5 28 Address Function address In Example A 15 on page A 11 the program is not executable so the first function address starts at zero 0x00000000 Some compilers make the starting address of the ...

Page 297: ... expected that the typical user will do this The syntax for specifying an interruptible procedure depends on the language it is beyond the scope of this manual to explain the syntax of specific languages Interrupt is a system level programmer function attribute Alternate Entry Point Meaningful only for pTAL procedures Subprocedure Meaningful only for pTAL procedures Visibility Whether other functi...

Page 298: ...LLQA SYSTEM SYSTEM stdlibh Size 0 bytes Address of First Procedure 0x00000000 Language C Optimization Level Default 0 Symbols Yes Compilation Timestamp not available Modification Timestamp not available Number 2 Name DLLQA D0117 CRGMAN globalsh Size 0 bytes Address of First Procedure 0x00000000 Language C Optimization Level Default 0 Symbols Yes Compilation Timestamp not available Modification Tim...

Page 299: ... in an SRL but the SRL information has not been linked into the compiled linkfile The SRL information is in the GINFO table that is only in the loadfile The LISTSRLINFO option cannot find the table with the SRL information so it issues the message shown in Example A 17 Example A 17 LISTSRLINFO Option Linkfile noft LISTSRLINFO DETAIL No GINFO Table ...

Page 300: ...le A 18 shows one message about the current progress of building the XREF information The number of progress messages depends on the amount of information contained in the program The larger the program the more progress messages are shown These messages inform you that the program is making progress even though it might be taking a long time Example A 18 LISTUNRESOLVED Option Linkfile noft LISTUN...

Page 301: ...ISTPROC on page A 17 LISTSOURCE on page A 18 LISTSRLINFO on page A 19 LISTUNRESOLVED on page A 20 This subsection also gives examples of the following options which were not in noft Command Examples on a Linkfile on page A 9 SET SORT on page A 19 LISTOPTIMIZE on page A 21 XREFPROC on page A 21 DUMPPROC on page A 24 LISTSRLFIXUPS on page A 26 LISTSRLEXPORTS on page A 27 LISTSRLFIXUPS on page A 27 F...

Page 302: ... Example A 20 LISTATTRIBUTE Option Loadfile noft LISTATTRIBUTE Object File DLLQA D0117 CRGMAN example1 File Format ELF Timestamp 2003 March 10 11 17 01 Symbols INSPECT Region Yes System Type Guardian Executable Yes Type of Executable non PIC program Process Subtype 0 Highrequesters Yes Runnamed No Highpin Yes Saveabend No Priv or Callable No Callable No OKToSetType No C dialect Neutral DEBUG INSPE...

Page 303: ... Files 3 C Compiler Front End T9577D46_T9225D46_30APR2003_CFE_24JAN2 Back End Optimizer Optimizer Not Used Back End Code Generator T8304D45_09SEP2002_11OCT2002_GDN Back End Assembler T8304D45_09SEP2002_11OCT2002_GDN Number of Source Files 1 C Compiler Front End T9577D46_T9225D46_T9577D46_01JUN99_CFE Back End Optimizer T8304D45_04JUL76_21JUN99_SUN Back End Code Generator T8304D45_04JUL76_21JUN99_SU...

Page 304: ...SYSTEM SYSTEM stdioh 5 0x70000560 DLLQA D0117 CRGMAN MODULE2C 6 0x70000560 DLLQA D0117 CRGMAN globalsh 7 0x70000560 DLLQA SYSTEM SYSTEM stdlibh 8 0x700006d0 DLLQA D0117 CRGMAN MAINC 9 0x700006d0 DLLQA SYSTEM SYSTEM stdlibh 10 0x700006d0 DLLQA D0117 CRGMAN globalsh 11 0x700006d0 DLLQA D0117 CRGMAN module1h 12 0x700006d0 DLLQA D0117 CRGMAN module2h 13 0x70000790 tmp_mnt designs runtime natived40 T84...

Page 305: ...ion_main c 13 0x70000790 tmp_mnt designs runtime natived40 T8432 G08 T8432 crtl_main c 14 0x70000790 usr tandem tndm_cmplrs g66 usr include errno h 16 0x70000790 usr tandem tndm_cmplrs g66 usr include stdio h 15 0x70000790 usr tandem tndm_cmplrs g66 usr include stdlib h 17 0x70000790 usr tandem tndm_cmplrs g66 usr include sys types h 18 0x70000790 usr tandem tndm_cmplrs g66 usr include sys wait h ...

Page 306: ...PLE1 than the linkfile MAINO The output of the LISTUNRESOLVED option in Example A 26 is affected by the SET SORT ALPHA option done in Example A 24 on page A 19 Example A 26 LISTUNRESOLVED Option Loadfile noft LISTUNRESOLVED BRIEF Unresolved Name 23 C_INT_INIT_COMPLETE_ 20 C_INT_INIT_START_ 22 environ 19 errno 16 exit 8 free 1 malloc 7 printf 4 rand 3 seed_random_number ...

Page 307: ...ualified source file name XREFPROC The XREFPROC option in Example A 29 is under the influence of the SET SCOPESOURCE option done in Example A 28 Example A 27 LISTOPTIMIZE Option Loadfile noft LISTOPTIMIZE Optimization of Procedures Procedure Name Opt T8432G09_30APR20031CRTLMAIN 7 2 __INIT__1_C 5 2 _MAIN 6 2 main 4 0 initialize 0 0 delete_passengers 3 0 add_passengers 2 0 wrapup 1 0 Example A 28 Ef...

Page 308: ... Effect of RESET SCOPESOURCE on XREFPROC Option noft RESET SCOPESOURCE Scope none noft xrefproc BRIEF Called Procedure Calling Procedures C_INT_INIT_COMPLETE_ _MAIN C_INT_INIT_START_ __INIT__1_C add_passengers main delete_passengers main exit _MAIN main free wrapup initialize main main _MAIN malloc initialize printf wrapup rand delete_passengers initialize seed_random_number initialize wrapup main...

Page 309: ...nal procedure rand The output shows that rand is called from the delete_passengers function and the initialize function and the addresses where the calls occur Example A 31 XREFPROC Option Loadfile noft XREFPROC rand DETAIL Called Procedure Demangled Name Calling Procedures Demangled Name Addresses rand delete_passengers 0x7000063c 0x7000066c initialize 0x700003e4 0x7000040c ...

Page 310: ...68 0000000000 nop delete_passengers 16100 0x7000066c 0x0e7f81f4 jal 0x79fe07d0 delete_passengers 16100 0x70000670 0000000000 nop delete_passengers 16100 0x70000674 0x00408025 move s0 v0 delete_passengers 16100 0x70000678 0x3219007f andi t9 s0 0x7f delete_passengers 16100 0x7000067c 0xafb90024 sw t9 0x24 sp delete_passengers 16100 0x70000680 0x3c010800 lui at 0x800 delete_passengers 16100 0x7000068...

Page 311: ... 16000 0x7000063c 0x0e7f81f4 jal 0x79fe07d0 delete_passengers 16000 0x70000640 0000000000 nop delete_passengers 16000 0x70000644 0x00408025 move s0 v0 delete_passengers 16000 0x70000648 0x320e007f andi t6 s0 0x7f delete_passengers 16000 0x7000064c 0xafae0024 sw t6 0x24 sp 16 01 while passengers_leaving passengers_on_bus delete_passengers 16010 0x70000650 0x8faf0024 lw t7 0x24 sp delete_passengers ...

Page 312: ...8 0x012a5823 subu t3 t1 t2 delete_passengers 16200 0x700006ac 0x3c010800 lui at 0x800 delete_passengers 16200 0x700006b0 0xac2b0000 sw t3 0 at 17 delete_passengers delete_passengers 17000 0x700006b4 0x10000001 b 0x700006bc delete_passengers 17000 0x700006b8 0000000000 nop delete_passengers 17000 0x700006bc 0x8fb00018 lw s0 0x18 sp delete_passengers 17000 0x700006c0 0x8fbf001c lw ra 0x1c sp delete_...

Page 313: ... user library is exporting LISTSRLFIXUPS Example A 36 uses the LISTSRLFIXUPS option to show which SRLs and SRL functions the user library needs Example A 35 LISTSRLEXPORTS Option noft FILE UTILLIB Object File DLLQA D0117 CRGMAN utillib File Format ELF Scope none Case Sensitive noft LISTSRLEXPORTS BRIEF Name 0 seed_random_number Example A 36 LISTSRLFIXUP LLF Option noft LISTSRLFIXUPS BRIEF SRL Name...

Page 314: ...Sample nld and noft Session nld and noft Manual 520384 003 A 28 LISTSRLFIXUPS ...

Page 315: ...ny special purpose instructions Compare to reduced instruction set computing RISC compilation unit A compilation unit is a source file plus source text that is read from other files by C and C include directives by COBOL SOURCE directives and COPY statements and by pTAL SOURCE directives which together compose a single input to the compiler A compiler generates one relinkable code file for each co...

Page 316: ...if the statement including the header were actually a specific set of other programming statements A header contains coded information that provides details such as data item length about the data that the header precedes In an OSS program a header is the name of a file known to the run time library used by a process In a Guardian environment C language program a header is the file identifier for ...

Page 317: ...ds and displays information from TNS R native object files non PIC non position independent code Executable code that must be modified to run at different virtual addresses Compare to PIC position independent code NonStop Kernel Open System Services OSS An application program interface API to the NonStop Kernel and associated tools and utilities For a more complete definition see Open System Servi...

Page 318: ...nt systems programming language based on TAL The pTAL language excludes architecture specific TAL constructs and includes new constructs that replace the architecture specific constructs Compare to Transaction Application Language TAL pTAL compiler An optimizing compiler for the pTAL language public library A library that is loaded when the CPU is loaded provided by HP The system library and SRLs ...

Page 319: ... time library SRL startup directory Your current working directory at the time you invoked the utility symbols information The tables in an object file that contain information for linking object files and symbolic debugging programs using the Visual Inspect debugger or the Inspect symbolic debugger system library A logically distinct part of the operating system that consists of user callable lib...

Page 320: ... that is available to TNS R native processes in the Guardian and OSS environments A TNS R native SRL can be either a public library or a user library UL A TNS R native process can have multiple public libraries but only one user library TNS R native user library A user library UL available to TNS R native processes in the Guardian and OSS environments A TNS R native user library is implemented as ...

Page 321: ...tion rules for 2 29 2 31 C programs continued NonStop SQL MP in 2 13 Windows nld and 2 5 C run time library Guardian nld utility and 2 17 nostdfiles flag and 3 9 OSS nld utility and 2 19 C standard input and output files 3 9 Case sensitivity in native languages 2 29 in nld options Guardian 2 2 OSS 2 3 in noft environment 5 42 CD flag noft 5 5 change flag nld 3 4 COBOL programs linking 2 12 nld com...

Page 322: ...DLLs dynamic link libraries 1 1 DUMPADDRESS flag noft 5 6 5 7 Dumping object files 4 5 DUMPOFFSET flag noft 5 8 5 9 DUMPPROC flag noft description of 5 10 5 12 in sample session A 24 Dynamic linking 2 28 Dynamic link libraries DLLs 1 1 E e flag nld 3 5 Editing noft flags 5 14 ELF format 1 2 elf_check flag nld 3 5 Enterprise Toolkit NonStop Edition See ETK ENV flag noft 5 13 Errors nld fatal 10 12 ...

Page 323: ... default value of 3 15 description of 3 13 HIGHREQUESTER attribute default value of 3 15 description of 3 14 HIGHREQUESTERS attribute default value of 3 15 description of 3 14 HIGHREQUESTOR attribute default value of 3 15 description of 3 14 HIGHREQUESTORS attribute default value of 3 15 description of 3 14 HISTORY flag noft 5 20 HP Enterprise Toolkit NonStop Edition See ETK I IEEE_FLOAT attribute...

Page 324: ... 2 user libraries 2 13 2 15 LISTATTRIBUTE or LA flag noft description of 5 22 5 23 in sample session applied to linkfile A 9 applied to loadfile A 16 LISTCOMPILERS or LC flag noft description of 5 23 5 25 in sample session applied to linkfile A 10 applied to loadfile A 17 Listing compiler versions 5 23 5 25 file attributes 5 22 5 23 files object 4 4 source 5 29 5 30 procedures all or part of 5 10 ...

Page 325: ...O flag noft description of 5 31 in sample session applied to linkfile A 13 applied to loadfile A 19 LO or LISTOPTIMIZE flag noft description of 5 26 in sample session A 21 Loadfiles characteristics of 1 2 creating 2 8 segments and sections of 8 1 LOG flag noft 5 38 LP or LISTPROC flag noft description of 5 27 5 28 in sample session applied to linkfile A 10 applied to loadfile A 17 SET SORT s effec...

Page 326: ...ommand files for 5 5 compared to Binder 9 6 9 7 controlling environment of 4 5 4 6 debugging with 4 7 4 11 displaying code and data with 5 6 5 7 displaying settings of 5 47 noft utility continued exiting 5 13 flags of 5 1 5 3 help with 5 17 history buffer of 5 44 in the Guardian environment 4 1 4 2 in the OSS environment 4 3 4 4 interrupting 5 3 log file of 5 38 options of 5 1 5 52 overview of 1 4...

Page 327: ...14 PIN setting 3 13 Position independent code PIC debugging 4 7 in general 1 1 producing object files of 1 1 Procedures listing all or part of 5 10 5 12 by optimization level 5 26 with their subprocedures 5 27 5 28 Process file segment specifying 3 14 Process subtype specifying 3 14 Process named 3 14 PROCESS_SUBTYPE attribute default value of 3 15 description of 3 14 pTAL programs linking 2 13 nl...

Page 328: ...e linked into object file 5 31 listing those with fixed up symbols 5 30 missing 3 3 naming conventions for 2 27 searching for 2 27 2 28 SRLs continued specifying 2 16 specifying locations of 3 8 Stack specifying size of 3 14 Standard C library 2 18 2 20 Standard input file 3 15 Standard library locations 2 27 Static linking 2 28 stdin flag nld 3 15 strip flag nld 3 16 strip utility details of 7 1 ...

Page 329: ...ociating with program files 3 14 creating 3 16 linking 2 13 2 15 V verbose flag nld 3 16 Versions of C 2 10 2 11 Visual Inspect 4 7 Visual Studio NET 1 2 VOLUME flag noft 5 48 W Warnings nld 10 69 10 76 noft 11 18 11 21 Windows nld 2 4 2 7 Working directory changing 5 5 X x flag nld 3 17 XREFPROC flag noft description of 5 49 5 52 in sample session A 21 A 23 Y y flag nld 3 17 Special Characters fl...

Page 330: ...Index nld and noft Manual 520384 003 Index 10 Special Characters ...

Reviews: