Debugging a Program With dbx

Notes

If ild determines that a command line option is not implemented, ild directly invokes /usr/css/bin/ld to perform the link.

ld Options Not Supported by ild

The following options, which may be given to the compilation system, are not supported by ild:


-G

In dynamic mode only, produces a shared object. Undefined symbols are allowed.


-B symbolic

In dynamic mode only, when building a shared object, bind references to global symbols to their definitions within the object, if definitions are available. Normally, references to global symbols within shared objects are not bound until runtime, even if definitions are available, so that definitions of the same symbol in an executable or other shared objects can override the object's own definition. ld issues warnings for undefined symbols unless -z defs overrides.


-b

In dynamic mode only, when creating an executable, does not do special processing for relocations that reference symbols in shared objects. Without the -b option, the link editor creates special position-independent relocations for references to functions defined in shared objects and arranges for data objects defined in shared objects to be copied into the memory image of the executable by the runtime linker. With the -b option, the output code can be more efficient, but it is less sharable.


-h name

In dynamic mode only, when building a shared object, records name in the object's dynamic section. Option name is recorded in executables that are linked with this object rather than the object's UNIX System file name. Accordingly, name is used by the runtime linker as the name of the shared object to search for at runtime.


-z muldefs

Allows multiple symbol definitions. By default, multiple symbol definitions occurring between relocatable objects result in a fatal error condition. This option suppresses the error condition, and allows the first symbol definition to be taken.


-z text

In dynamic mode only, forces a fatal error if any relocations against non-writable, allocatable sections remain.

In addition, the following options that may be passed directly to ld, are not supported by ild:


-D token,token, ...

Prints debugging information as specified by each token, to the standard error. The special token help indicates the full list of tokens available.


-F name

Useful only when building a shared object. Specifies that the symbol table of the shared object is used as a "filter" on the symbol table of the shared object specified by name.


-M mapfile

Reads mapfile as a text file of directives to ld. See the Solaris Linker and Libraries Guide for a description of mapfiles.


-r

Combines relocatable object files to produce one relocatable object file. ld does not complain about unresolved references. This option cannot be used in dynamic mode or with -a.

Files Used by ild

libx.a  libraries
a.out output file
LIBPATHusually /usr/lib