Annotation of researchv10dc/dist/man/v4/man1/ld.1, revision 1.1

1.1     ! root        1: .th LD I 8/16/73
        !             2: .sh NAME
        !             3: ld  \*-  link editor
        !             4: .sh SYNOPSIS
        !             5: .bd ld
        !             6: [
        !             7: .bd \*-sulxrnd
        !             8: ] name ...
        !             9: .sh DESCRIPTION
        !            10: .it Ld
        !            11: combines several
        !            12: object programs into one; resolves external
        !            13: references; and searches libraries.
        !            14: In the simplest case the names of several object
        !            15: programs are given, and
        !            16: .it d
        !            17: combines them, producing
        !            18: an object module which can be either executed or
        !            19: become the input for a further
        !            20: .it ld
        !            21: run.
        !            22: (In the latter case, the
        !            23: .bd \*-r
        !            24: option must be given
        !            25: to preserve the relocation bits.)
        !            26: The output of
        !            27: .it ld
        !            28: is left on
        !            29: .bd a.out.
        !            30: This file is executable
        !            31: only if no errors occurred during the load.
        !            32: .s3
        !            33: The argument routines are concatenated in the order
        !            34: specified.  The entry point of the output is the
        !            35: beginning of the first routine.
        !            36: .s3
        !            37: If any argument is a library, it is searched exactly once
        !            38: at the point it is encountered in the argument list.
        !            39: Only those routines defining an unresolved external
        !            40: reference are loaded.
        !            41: If a routine from a library
        !            42: references another routine in the library,
        !            43: the referenced routine must appear after the
        !            44: referencing routine in the library.
        !            45: Thus the order of programs within libraries
        !            46: is important.
        !            47: .s3
        !            48: .it Ld
        !            49: understands several flag arguments which are written
        !            50: preceded by a `\*-'.
        !            51: Except for \fB\*-l\fR,
        !            52: they should appear before the file names.
        !            53: .s3
        !            54: .lp +4 4
        !            55: \fB\*-s\fR     `squash' the output, that is, remove the symbol table
        !            56: and relocation bits to save space (but impair the
        !            57: usefulness of the debugger).
        !            58: This information can also be removed by
        !            59: .it strip.
        !            60: .s3
        !            61: .lp +4 4
        !            62: \fB\*-u\fR     take the following argument as a symbol and enter
        !            63: it as undefined in the symbol table.  This is useful
        !            64: for loading wholly from a library, since initially the symbol
        !            65: table is empty and an unresolved reference is needed
        !            66: to force the loading of the first routine.
        !            67: .s3
        !            68: .lp +4 4
        !            69: \fB\*-l\fR     This
        !            70: option is an abbreviation for a library name.
        !            71: \fB\*-l\fR
        !            72: alone stands for `/lib/liba.a', which
        !            73: is the standard system library for assembly language
        !            74: programs.
        !            75: \fB\*-l\fIx\fR
        !            76: stands for `/lib/lib\fIx\fR.a' where \fIx\fR is any character.
        !            77: There are libraries for Fortran (\fIx\fR = \fBf\fR),
        !            78: and C (\fIx\fR = \fBc\fR).
        !            79: A library is searched when its name is encountered,
        !            80: so the placement of a \fB\*-l\fR
        !            81: is significant.
        !            82: .s3
        !            83: .lp +4 4
        !            84: \fB\*-x\fR     do not preserve local
        !            85: (non-.globl) symbols in the output symbol table; only enter
        !            86: external symbols.
        !            87: This option saves some space in the output file.
        !            88: .s3
        !            89: .lp +4 4
        !            90: \fB\*-r\fR     generate relocation bits in the output file
        !            91: so that it can be the subject of another
        !            92: .it ld
        !            93: run.
        !            94: This flag also prevents final definitions from being
        !            95: given to common symbols.
        !            96: .s3
        !            97: .lp +4 4
        !            98: \fB\*-d\fR     force definition of common storage
        !            99: even if the
        !           100: .bd \*-r
        !           101: flag is present (used for reloc (VIII)).
        !           102: .s3
        !           103: .lp +4 4
        !           104: \fB\*-n\fR     Arrange that
        !           105: when the output file is executed,
        !           106: the text portion will be read-only and shared
        !           107: among all users executing the file.
        !           108: This involves moving the data areas up the the first
        !           109: possible 4K word boundary following the
        !           110: end of the text.
        !           111: .i0
        !           112: .sh FILES
        !           113: /lib/lib?.a   libraries
        !           114: .br
        !           115: a.out   output file
        !           116: .sh "SEE ALSO"
        !           117: as(I), ar(I)
        !           118: .sh BUGS

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.