Annotation of researchv10dc/man/manb/mld.9, revision 1.1.1.1

1.1       root        1: .TH MLD 9.1
                      2: .SH NAME
                      3: mld \- MC68000 link editor (loader)
                      4: .SH SYNOPSIS
                      5: .B mld
                      6: [ option ] ... file ...
                      7: .SH DESCRIPTION
                      8: .I Mld
                      9: combines several Motorola 68000
                     10: object programs into one, resolves external
                     11: references, and searches libraries.
                     12: In the simplest case several object
                     13: .I files
                     14: are given, and
                     15: .I mld
                     16: combines them, producing
                     17: an object module which can be either executed or
                     18: become the input for a further
                     19: .I mld
                     20: run.
                     21: (In the latter case, the
                     22: .B \-r
                     23: option must be given
                     24: to preserve the relocation bits.)
                     25: The output of
                     26: .I mld
                     27: is left on
                     28: .BR a.out .
                     29: This file is made executable
                     30: only if no errors occurred during the load.
                     31: .PP
                     32: The argument routines are concatenated in the order
                     33: specified.
                     34: The entry point of the output is the
                     35: beginning of the first routine.
                     36: .PP
                     37: A library is a collection of object modules gathered into
                     38: a file by
                     39: .I ar (1).
                     40: If any argument is a library, it is searched exactly once
                     41: at the point it is encountered in the argument list.
                     42: Only those routines defining an unresolved external
                     43: reference are loaded.
                     44: If a routine from a library
                     45: references another routine in the library,
                     46: the referenced routine must appear after the
                     47: referencing routine in the library.
                     48: Thus the order of programs within libraries
                     49: may be important.
                     50: .PP
                     51: The symbols `etext', `edata' and `end'
                     52: are reserved, and if referred to,
                     53: are set to the first location above the program,
                     54: the first location above initialized data,
                     55: and the first location above all data respectively.
                     56: It is erroneous to define these symbols.
                     57: .PP
                     58: .I Mld
                     59: understands several options.
                     60: Except for
                     61: .BR \-l ,
                     62: they should appear before the file names.
                     63: .TP
                     64: .BI \-b
                     65: relocate the program so its
                     66: first instruction is at the absolute position indicated by the
                     67: decimal
                     68: .I address
                     69: after the
                     70: .B \-b
                     71: option.
                     72: .TP
                     73: .B \-B
                     74: Similar to
                     75: .BR \-b ,
                     76: but only set the base address for the BSS segment.
                     77: This option is usually used in conjunction with
                     78: .B \-b
                     79: when loading programs to run from ROM.
                     80: .TP
                     81: .B  \-d
                     82: Force definition of common storage
                     83: even if the
                     84: .B \-r
                     85: flag is present.
                     86: .TP 
                     87: .BI \-l x
                     88: This
                     89: option is an abbreviation for the library name
                     90: .RI `/usr/lib/lib x .a',
                     91: where
                     92: .I x
                     93: is a string.
                     94: If that does not exist,
                     95: .I mld
                     96: tries
                     97: .RI `/usr/jerq/lib/lib x .a'
                     98: A library is searched when its name is encountered,
                     99: so the placement of a
                    100: .B  \-l
                    101: is significant.
                    102: .TP 
                    103: .B  \-o
                    104: The
                    105: .I name
                    106: argument after
                    107: .B \-o
                    108: is used as the name of the
                    109: .I mld
                    110: output file, instead of
                    111: .BR a.out .
                    112: .TP 
                    113: .B  \-r
                    114: Generate relocation bits in the output file
                    115: so that it can be the subject of another
                    116: .I mld
                    117: run.
                    118: This flag also prevents final definitions from being
                    119: given to common symbols,
                    120: and suppresses the `undefined symbol' diagnostics.
                    121: .TP
                    122: .B \-s
                    123: Remove the symbol table and relocation symbols to
                    124: save space in the resulting binary.
                    125: .TP
                    126: .B \-R
                    127: Similar to
                    128: .BR \-r ,
                    129: but flag an error if there are undefined symbols.
                    130: .TP
                    131: .B \-M
                    132: Set the resulting a.out's magic number to 0406,
                    133: to signify a binary runnable under
                    134: .IR mpx (1).
                    135: .TP
                    136: .B \-v
                    137: Generate copious debugging information on standard output.
                    138: .SH FILES
                    139: .ta \w'/usr/jerq/lib/lib*.a\ \ 'u
                    140: /usr/jerq/lib/lib*.a   libraries
                    141: .br
                    142: /usr/lib/lib*.a        more libraries
                    143: .br
                    144: a.out  output file
                    145: .SH "SEE ALSO"
                    146: ld(1), mcc(1), ar(1)

unix.superglobalmegacorp.com

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