| This is ld.info, produced by makeinfo version 4.0 from ./ld.texinfo. |
| |
| START-INFO-DIR-ENTRY |
| * Ld: (ld). The GNU linker. |
| END-INFO-DIR-ENTRY |
| |
| This file documents the GNU linker LD version 2.10.1. |
| |
| Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free |
| Software Foundation, Inc. |
| |
| Permission is granted to make and distribute verbatim copies of this |
| manual provided the copyright notice and this permission notice are |
| preserved on all copies. |
| |
| Permission is granted to copy and distribute modified versions of |
| this manual under the conditions for verbatim copying, provided also |
| that the entire resulting derived work is distributed under the terms |
| of a permission notice identical to this one. |
| |
| Permission is granted to copy and distribute translations of this |
| manual into another language, under the above conditions for modified |
| versions. |
| |
| |
| File: ld.info, Node: Bug Reporting, Prev: Bug Criteria, Up: Reporting Bugs |
| |
| How to report bugs |
| ================== |
| |
| A number of companies and individuals offer support for GNU |
| products. If you obtained `ld' from a support organization, we |
| recommend you contact that organization first. |
| |
| You can find contact information for many support companies and |
| individuals in the file `etc/SERVICE' in the GNU Emacs distribution. |
| |
| Otherwise, send bug reports for `ld' to `bug-gnu-utils@gnu.org'. |
| |
| The fundamental principle of reporting bugs usefully is this: |
| *report all the facts*. If you are not sure whether to state a fact or |
| leave it out, state it! |
| |
| Often people omit facts because they think they know what causes the |
| problem and assume that some details do not matter. Thus, you might |
| assume that the name of a symbol you use in an example does not matter. |
| Well, probably it does not, but one cannot be sure. Perhaps the bug is |
| a stray memory reference which happens to fetch from the location where |
| that name is stored in memory; perhaps, if the name were different, the |
| contents of that location would fool the linker into doing the right |
| thing despite the bug. Play it safe and give a specific, complete |
| example. That is the easiest thing for you to do, and the most helpful. |
| |
| Keep in mind that the purpose of a bug report is to enable us to fix |
| the bug if it is new to us. Therefore, always write your bug reports |
| on the assumption that the bug has not been reported previously. |
| |
| Sometimes people give a few sketchy facts and ask, "Does this ring a |
| bell?" Those bug reports are useless, and we urge everyone to _refuse |
| to respond to them_ except to chide the sender to report bugs properly. |
| |
| To enable us to fix the bug, you should include all these things: |
| |
| * The version of `ld'. `ld' announces it if you start it with the |
| `--version' argument. |
| |
| Without this, we will not know whether there is any point in |
| looking for the bug in the current version of `ld'. |
| |
| * Any patches you may have applied to the `ld' source, including any |
| patches made to the `BFD' library. |
| |
| * The type of machine you are using, and the operating system name |
| and version number. |
| |
| * What compiler (and its version) was used to compile `ld'--e.g. |
| "`gcc-2.7'". |
| |
| * The command arguments you gave the linker to link your example and |
| observe the bug. To guarantee you will not omit something |
| important, list them all. A copy of the Makefile (or the output |
| from make) is sufficient. |
| |
| If we were to try to guess the arguments, we would probably guess |
| wrong and then we might not encounter the bug. |
| |
| * A complete input file, or set of input files, that will reproduce |
| the bug. It is generally most helpful to send the actual object |
| files, uuencoded if necessary to get them through the mail system. |
| Making them available for anonymous FTP is not as good, but may |
| be the only reasonable choice for large object files. |
| |
| If the source files were assembled using `gas' or compiled using |
| `gcc', then it may be OK to send the source files rather than the |
| object files. In this case, be sure to say exactly what version of |
| `gas' or `gcc' was used to produce the object files. Also say how |
| `gas' or `gcc' were configured. |
| |
| * A description of what behavior you observe that you believe is |
| incorrect. For example, "It gets a fatal signal." |
| |
| Of course, if the bug is that `ld' gets a fatal signal, then we |
| will certainly notice it. But if the bug is incorrect output, we |
| might not notice unless it is glaringly wrong. You might as well |
| not give us a chance to make a mistake. |
| |
| Even if the problem you experience is a fatal signal, you should |
| still say so explicitly. Suppose something strange is going on, |
| such as, your copy of `ld' is out of synch, or you have |
| encountered a bug in the C library on your system. (This has |
| happened!) Your copy might crash and ours would not. If you told |
| us to expect a crash, then when ours fails to crash, we would know |
| that the bug was not happening for us. If you had not told us to |
| expect a crash, then we would not be able to draw any conclusion |
| from our observations. |
| |
| * If you wish to suggest changes to the `ld' source, send us context |
| diffs, as generated by `diff' with the `-u', `-c', or `-p' option. |
| Always send diffs from the old file to the new file. If you even |
| discuss something in the `ld' source, refer to it by context, not |
| by line number. |
| |
| The line numbers in our development sources will not match those |
| in your sources. Your line numbers would convey no useful |
| information to us. |
| |
| Here are some things that are not necessary: |
| |
| * A description of the envelope of the bug. |
| |
| Often people who encounter a bug spend a lot of time investigating |
| which changes to the input file will make the bug go away and which |
| changes will not affect it. |
| |
| This is often time consuming and not very useful, because the way |
| we will find the bug is by running a single example under the |
| debugger with breakpoints, not by pure deduction from a series of |
| examples. We recommend that you save your time for something else. |
| |
| Of course, if you can find a simpler example to report _instead_ |
| of the original one, that is a convenience for us. Errors in the |
| output will be easier to spot, running under the debugger will take |
| less time, and so on. |
| |
| However, simplification is not vital; if you do not want to do |
| this, report the bug anyway and send us the entire test case you |
| used. |
| |
| * A patch for the bug. |
| |
| A patch for the bug does help us if it is a good one. But do not |
| omit the necessary information, such as the test case, on the |
| assumption that a patch is all we need. We might see problems |
| with your patch and decide to fix the problem another way, or we |
| might not understand it at all. |
| |
| Sometimes with a program as complicated as `ld' it is very hard to |
| construct an example that will make the program follow a certain |
| path through the code. If you do not send us the example, we will |
| not be able to construct one, so we will not be able to verify |
| that the bug is fixed. |
| |
| And if we cannot understand what bug you are trying to fix, or why |
| your patch should be an improvement, we will not install it. A |
| test case will help us to understand. |
| |
| * A guess about what the bug is or what it depends on. |
| |
| Such guesses are usually wrong. Even we cannot guess right about |
| such things without first using the debugger to find the facts. |
| |
| |
| File: ld.info, Node: MRI, Next: Index, Prev: Reporting Bugs, Up: Top |
| |
| MRI Compatible Script Files |
| *************************** |
| |
| To aid users making the transition to GNU `ld' from the MRI linker, |
| `ld' can use MRI compatible linker scripts as an alternative to the |
| more general-purpose linker scripting language described in *Note |
| Scripts::. MRI compatible linker scripts have a much simpler command |
| set than the scripting language otherwise used with `ld'. GNU `ld' |
| supports the most commonly used MRI linker commands; these commands are |
| described here. |
| |
| In general, MRI scripts aren't of much use with the `a.out' object |
| file format, since it only has three sections and MRI scripts lack some |
| features to make use of them. |
| |
| You can specify a file containing an MRI-compatible script using the |
| `-c' command-line option. |
| |
| Each command in an MRI-compatible script occupies its own line; each |
| command line starts with the keyword that identifies the command (though |
| blank lines are also allowed for punctuation). If a line of an |
| MRI-compatible script begins with an unrecognized keyword, `ld' issues |
| a warning message, but continues processing the script. |
| |
| Lines beginning with `*' are comments. |
| |
| You can write these commands using all upper-case letters, or all |
| lower case; for example, `chip' is the same as `CHIP'. The following |
| list shows only the upper-case form of each command. |
| |
| `ABSOLUTE SECNAME' |
| `ABSOLUTE SECNAME, SECNAME, ... SECNAME' |
| Normally, `ld' includes in the output file all sections from all |
| the input files. However, in an MRI-compatible script, you can |
| use the `ABSOLUTE' command to restrict the sections that will be |
| present in your output program. If the `ABSOLUTE' command is used |
| at all in a script, then only the sections named explicitly in |
| `ABSOLUTE' commands will appear in the linker output. You can |
| still use other input sections (whatever you select on the command |
| line, or using `LOAD') to resolve addresses in the output file. |
| |
| `ALIAS OUT-SECNAME, IN-SECNAME' |
| Use this command to place the data from input section IN-SECNAME |
| in a section called OUT-SECNAME in the linker output file. |
| |
| IN-SECNAME may be an integer. |
| |
| `ALIGN SECNAME = EXPRESSION' |
| Align the section called SECNAME to EXPRESSION. The EXPRESSION |
| should be a power of two. |
| |
| `BASE EXPRESSION' |
| Use the value of EXPRESSION as the lowest address (other than |
| absolute addresses) in the output file. |
| |
| `CHIP EXPRESSION' |
| `CHIP EXPRESSION, EXPRESSION' |
| This command does nothing; it is accepted only for compatibility. |
| |
| `END' |
| This command does nothing whatever; it's only accepted for |
| compatibility. |
| |
| `FORMAT OUTPUT-FORMAT' |
| Similar to the `OUTPUT_FORMAT' command in the more general linker |
| language, but restricted to one of these output formats: |
| |
| 1. S-records, if OUTPUT-FORMAT is `S' |
| |
| 2. IEEE, if OUTPUT-FORMAT is `IEEE' |
| |
| 3. COFF (the `coff-m68k' variant in BFD), if OUTPUT-FORMAT is |
| `COFF' |
| |
| `LIST ANYTHING...' |
| Print (to the standard output file) a link map, as produced by the |
| `ld' command-line option `-M'. |
| |
| The keyword `LIST' may be followed by anything on the same line, |
| with no change in its effect. |
| |
| `LOAD FILENAME' |
| `LOAD FILENAME, FILENAME, ... FILENAME' |
| Include one or more object file FILENAME in the link; this has the |
| same effect as specifying FILENAME directly on the `ld' command |
| line. |
| |
| `NAME OUTPUT-NAME' |
| OUTPUT-NAME is the name for the program produced by `ld'; the |
| MRI-compatible command `NAME' is equivalent to the command-line |
| option `-o' or the general script language command `OUTPUT'. |
| |
| `ORDER SECNAME, SECNAME, ... SECNAME' |
| `ORDER SECNAME SECNAME SECNAME' |
| Normally, `ld' orders the sections in its output file in the order |
| in which they first appear in the input files. In an |
| MRI-compatible script, you can override this ordering with the |
| `ORDER' command. The sections you list with `ORDER' will appear |
| first in your output file, in the order specified. |
| |
| `PUBLIC NAME=EXPRESSION' |
| `PUBLIC NAME,EXPRESSION' |
| `PUBLIC NAME EXPRESSION' |
| Supply a value (EXPRESSION) for external symbol NAME used in the |
| linker input files. |
| |
| `SECT SECNAME, EXPRESSION' |
| `SECT SECNAME=EXPRESSION' |
| `SECT SECNAME EXPRESSION' |
| You can use any of these three forms of the `SECT' command to |
| specify the start address (EXPRESSION) for section SECNAME. If |
| you have more than one `SECT' statement for the same SECNAME, only |
| the _first_ sets the start address. |
| |
| |
| File: ld.info, Node: Index, Prev: MRI, Up: Top |
| |
| Index |
| ***** |
| |
| * Menu: |
| |
| * ": Symbols. |
| * -(: Options. |
| * --add-stdcall-alias: Options. |
| * --architecture=ARCH: Options. |
| * --auxiliary: Options. |
| * --base-file: Options. |
| * --check-sections: Options. |
| * --cref: Options. |
| * --defsym SYMBOL=EXP: Options. |
| * --demangle: Options. |
| * --disable-stdcall-fixup: Options. |
| * --discard-all: Options. |
| * --discard-locals: Options. |
| * --dll: Options. |
| * --dynamic-linker FILE: Options. |
| * --embedded-relocs: Options. |
| * --enable-stdcall-fixup: Options. |
| * --entry=ENTRY: Options. |
| * --exclude-symbols: Options. |
| * --export-all-symbols: Options. |
| * --export-dynamic: Options. |
| * --file-alignment: Options. |
| * --filter: Options. |
| * --force-exe-suffix: Options. |
| * --format=FORMAT: Options. |
| * --gc-sections: Options. |
| * --gpsize: Options. |
| * --heap: Options. |
| * --help: Options. |
| * --image-base: Options. |
| * --just-symbols=FILE: Options. |
| * --kill-at: Options. |
| * --library-path=DIR: Options. |
| * --library=ARCHIVE: Options. |
| * --major-image-version: Options. |
| * --major-os-version: Options. |
| * --major-subsystem-version: Options. |
| * --minor-image-version: Options. |
| * --minor-os-version: Options. |
| * --minor-subsystem-version: Options. |
| * --mri-script=MRI-CMDFILE: Options. |
| * --nmagic: Options. |
| * --no-check-sections: Options. |
| * --no-demangle: Options. |
| * --no-gc-sections: Options. |
| * --no-keep-memory: Options. |
| * --no-undefined: Options. |
| * --no-warn-mismatch: Options. |
| * --no-whole-archive: Options. |
| * --noinhibit-exec: Options. |
| * --oformat: Options. |
| * --omagic: Options. |
| * --output-def: Options. |
| * --output=OUTPUT: Options. |
| * --print-map: Options. |
| * --relax: Options. |
| * --relax on i960: i960. |
| * --relocateable: Options. |
| * --script=SCRIPT: Options. |
| * --section-alignment: Options. |
| * --sort-common: Options. |
| * --split-by-file: Options. |
| * --split-by-reloc: Options. |
| * --stack: Options. |
| * --stats: Options. |
| * --strip-all: Options. |
| * --strip-debug: Options. |
| * --subsystem: Options. |
| * --support-old-code: ARM. |
| * --thumb-entry=ENTRY: ARM. |
| * --trace: Options. |
| * --trace-symbol=SYMBOL: Options. |
| * --traditional-format: Options. |
| * --undefined=SYMBOL: Options. |
| * --verbose: Options. |
| * --version: Options. |
| * --version-script=VERSION-SCRIPTFILE: Options. |
| * --warn-comon: Options. |
| * --warn-constructors: Options. |
| * --warn-multiple-gp: Options. |
| * --warn-once: Options. |
| * --warn-section-align: Options. |
| * --whole-archive: Options. |
| * --wrap: Options. |
| * -AARCH: Options. |
| * -aKEYWORD: Options. |
| * -assert KEYWORD: Options. |
| * -b FORMAT: Options. |
| * -Bdynamic: Options. |
| * -Bshareable: Options. |
| * -Bstatic: Options. |
| * -Bsymbolic: Options. |
| * -c MRI-CMDFILE: Options. |
| * -call_shared: Options. |
| * -d: Options. |
| * -dc: Options. |
| * -dn: Options. |
| * -dp: Options. |
| * -dy: Options. |
| * -E: Options. |
| * -e ENTRY: Options. |
| * -EB: Options. |
| * -EL: Options. |
| * -F: Options. |
| * -f: Options. |
| * -fini: Options. |
| * -G: Options. |
| * -g: Options. |
| * -hNAME: Options. |
| * -i: Options. |
| * -init: Options. |
| * -lARCHIVE: Options. |
| * -LDIR: Options. |
| * -M: Options. |
| * -m EMULATION: Options. |
| * -Map: Options. |
| * -N: Options. |
| * -n: Options. |
| * -non_shared: Options. |
| * -O LEVEL: Options. |
| * -o OUTPUT: Options. |
| * -qmagic: Options. |
| * -Qy: Options. |
| * -r: Options. |
| * -R FILE: Options. |
| * -rpath: Options. |
| * -rpath-link: Options. |
| * -S: Options. |
| * -s: Options. |
| * -shared: Options. |
| * -soname=NAME: Options. |
| * -static: Options. |
| * -t: Options. |
| * -T SCRIPT: Options. |
| * -Tbss ORG: Options. |
| * -Tdata ORG: Options. |
| * -Ttext ORG: Options. |
| * -u SYMBOL: Options. |
| * -Ur: Options. |
| * -V: Options. |
| * -v: Options. |
| * -X: Options. |
| * -x: Options. |
| * -Y PATH: Options. |
| * -y SYMBOL: Options. |
| * -z KEYWORD: Options. |
| * .: Location Counter. |
| * /DISCARD/: Output Section Discarding. |
| * :PHDR: Output Section Phdr. |
| * =FILLEXP: Output Section Fill. |
| * >REGION: Output Section Region. |
| * [COMMON]: Input Section Common. |
| * ABSOLUTE (MRI): MRI. |
| * absolute and relocatable symbols: Expression Section. |
| * absolute expressions: Expression Section. |
| * ABSOLUTE(EXP): Builtin Functions. |
| * ADDR(SECTION): Builtin Functions. |
| * address, section: Output Section Address. |
| * ALIAS (MRI): MRI. |
| * ALIGN (MRI): MRI. |
| * align location counter: Builtin Functions. |
| * ALIGN(EXP): Builtin Functions. |
| * allocating memory: MEMORY. |
| * architecture: Miscellaneous Commands. |
| * architectures: Options. |
| * archive files, from cmd line: Options. |
| * archive search path in linker script: File Commands. |
| * arithmetic: Expressions. |
| * arithmetic operators: Operators. |
| * ARM interworking support: ARM. |
| * ASSERT: Miscellaneous Commands. |
| * assertion in linker script: Miscellaneous Commands. |
| * assignment in scripts: Assignments. |
| * AT(LMA): Output Section LMA. |
| * AT>LMA_REGION: Output Section LMA. |
| * back end: BFD. |
| * BASE (MRI): MRI. |
| * BFD canonical format: Canonical format. |
| * BFD requirements: BFD. |
| * big-endian objects: Options. |
| * binary input format: Options. |
| * BLOCK(EXP): Builtin Functions. |
| * bug criteria: Bug Criteria. |
| * bug reports: Bug Reporting. |
| * bugs in ld: Reporting Bugs. |
| * BYTE(EXPRESSION): Output Section Data. |
| * C++ constructors, arranging in link: Output Section Keywords. |
| * CHIP (MRI): MRI. |
| * COLLECT_NO_DEMANGLE: Environment. |
| * combining symbols, warnings on: Options. |
| * command files: Scripts. |
| * command line: Options. |
| * common allocation: Options. |
| * common allocation in linker script: Miscellaneous Commands. |
| * common symbol placement: Input Section Common. |
| * compatibility, MRI: Options. |
| * constants in linker scripts: Constants. |
| * CONSTRUCTORS: Output Section Keywords. |
| * constructors: Options. |
| * constructors, arranging in link: Output Section Keywords. |
| * crash of linker: Bug Criteria. |
| * CREATE_OBJECT_SYMBOLS: Output Section Keywords. |
| * cross reference table: Options. |
| * cross references: Miscellaneous Commands. |
| * current output location: Location Counter. |
| * data: Output Section Data. |
| * dbx: Options. |
| * DEF files, creating: Options. |
| * default emulation: Environment. |
| * default input format: Environment. |
| * DEFINED(SYMBOL): Builtin Functions. |
| * deleting local symbols: Options. |
| * demangling, default: Environment. |
| * demangling, from command line: Options. |
| * discarding sections: Output Section Discarding. |
| * discontinuous memory: MEMORY. |
| * DLLs, creating: Options. |
| * dot: Location Counter. |
| * dot inside sections: Location Counter. |
| * dynamic linker, from command line: Options. |
| * dynamic symbol table: Options. |
| * ELF program headers: PHDRS. |
| * emulation: Options. |
| * emulation, default: Environment. |
| * END (MRI): MRI. |
| * endianness: Options. |
| * entry point: Entry Point. |
| * entry point, from command line: Options. |
| * entry point, thumb: ARM. |
| * ENTRY(SYMBOL): Entry Point. |
| * error on valid input: Bug Criteria. |
| * example of linker script: Simple Example. |
| * expression evaluation order: Evaluation. |
| * expression sections: Expression Section. |
| * expression, absolute: Builtin Functions. |
| * expressions: Expressions. |
| * EXTERN: Miscellaneous Commands. |
| * fatal signal: Bug Criteria. |
| * file name wildcard patterns: Input Section Wildcards. |
| * FILEHDR: PHDRS. |
| * filename symbols: Output Section Keywords. |
| * fill pattern, entire section: Output Section Fill. |
| * FILL(EXPRESSION): Output Section Data. |
| * finalization function: Options. |
| * first input file: File Commands. |
| * first instruction: Entry Point. |
| * FORCE_COMMON_ALLOCATION: Miscellaneous Commands. |
| * FORMAT (MRI): MRI. |
| * functions in expressions: Builtin Functions. |
| * garbage collection <1>: Input Section Keep. |
| * garbage collection: Options. |
| * generating optimized output: Options. |
| * GNU linker: Overview. |
| * GNUTARGET: Environment. |
| * GROUP(FILES): File Commands. |
| * grouping input files: File Commands. |
| * groups of archives: Options. |
| * H8/300 support: H8/300. |
| * header size: Builtin Functions. |
| * heap size: Options. |
| * help: Options. |
| * holes: Location Counter. |
| * holes, filling: Output Section Data. |
| * i960 support: i960. |
| * image base: Options. |
| * implicit linker scripts: Implicit Linker Scripts. |
| * INCLUDE FILENAME: File Commands. |
| * including a linker script: File Commands. |
| * including an entire archive: Options. |
| * incremental link: Options. |
| * initialization function: Options. |
| * initialized data in ROM: Output Section LMA. |
| * input file format in linker script: Format Commands. |
| * input filename symbols: Output Section Keywords. |
| * input files in linker scripts: File Commands. |
| * input files, displaying: Options. |
| * input format: Options. |
| * input object files in linker scripts: File Commands. |
| * input section basics: Input Section Basics. |
| * input section wildcards: Input Section Wildcards. |
| * input sections: Input Section. |
| * INPUT(FILES): File Commands. |
| * integer notation: Constants. |
| * integer suffixes: Constants. |
| * internal object-file format: Canonical format. |
| * invalid input: Bug Criteria. |
| * K and M integer suffixes: Constants. |
| * KEEP: Input Section Keep. |
| * l =: MEMORY. |
| * L, deleting symbols beginning: Options. |
| * lazy evaluation: Evaluation. |
| * ld bugs, reporting: Bug Reporting. |
| * LDEMULATION: Environment. |
| * len =: MEMORY. |
| * LENGTH =: MEMORY. |
| * library search path in linker script: File Commands. |
| * link map: Options. |
| * link-time runtime library search path: Options. |
| * linker crash: Bug Criteria. |
| * linker script concepts: Basic Script Concepts. |
| * linker script example: Simple Example. |
| * linker script file commands: File Commands. |
| * linker script format: Script Format. |
| * linker script input object files: File Commands. |
| * linker script simple commands: Simple Commands. |
| * linker scripts: Scripts. |
| * LIST (MRI): MRI. |
| * little-endian objects: Options. |
| * LOAD (MRI): MRI. |
| * load address: Output Section LMA. |
| * LOADADDR(SECTION): Builtin Functions. |
| * loading, preventing: Output Section Type. |
| * local symbols, deleting: Options. |
| * location counter: Location Counter. |
| * LONG(EXPRESSION): Output Section Data. |
| * M and K integer suffixes: Constants. |
| * machine architecture: Miscellaneous Commands. |
| * machine dependencies: Machine Dependent. |
| * mapping input sections to output sections: Input Section. |
| * MAX: Builtin Functions. |
| * MEMORY: MEMORY. |
| * memory region attributes: MEMORY. |
| * memory regions: MEMORY. |
| * memory regions and sections: Output Section Region. |
| * memory usage: Options. |
| * MIN: Builtin Functions. |
| * MIPS embedded PIC code: Options. |
| * MRI compatibility: MRI. |
| * NAME (MRI): MRI. |
| * name, section: Output Section Name. |
| * names: Symbols. |
| * naming the output file: Options. |
| * NEXT(EXP): Builtin Functions. |
| * NMAGIC: Options. |
| * NOCROSSREFS(SECTIONS): Miscellaneous Commands. |
| * NOLOAD: Output Section Type. |
| * not enough room for program headers: Builtin Functions. |
| * o =: MEMORY. |
| * objdump -i: BFD. |
| * object file management: BFD. |
| * object files: Options. |
| * object formats available: BFD. |
| * object size: Options. |
| * OMAGIC: Options. |
| * opening object files: BFD outline. |
| * operators for arithmetic: Operators. |
| * options: Options. |
| * ORDER (MRI): MRI. |
| * org =: MEMORY. |
| * ORIGIN =: MEMORY. |
| * output file after errors: Options. |
| * output file format in linker script: Format Commands. |
| * output file name in linker scripot: File Commands. |
| * output section attributes: Output Section Attributes. |
| * output section data: Output Section Data. |
| * OUTPUT(FILENAME): File Commands. |
| * OUTPUT_ARCH(BFDARCH): Miscellaneous Commands. |
| * OUTPUT_FORMAT(BFDNAME): Format Commands. |
| * OVERLAY: Overlay Description. |
| * overlays: Overlay Description. |
| * partial link: Options. |
| * PHDRS: PHDRS. |
| * precedence in expressions: Operators. |
| * prevent unnecessary loading: Output Section Type. |
| * program headers: PHDRS. |
| * program headers and sections: Output Section Phdr. |
| * program headers, not enough room: Builtin Functions. |
| * program segments: PHDRS. |
| * PROVIDE: PROVIDE. |
| * PUBLIC (MRI): MRI. |
| * QUAD(EXPRESSION): Output Section Data. |
| * quoted symbol names: Symbols. |
| * read-only text: Options. |
| * read/write from cmd line: Options. |
| * regions of memory: MEMORY. |
| * relative expressions: Expression Section. |
| * relaxing addressing modes: Options. |
| * relaxing on H8/300: H8/300. |
| * relaxing on i960: i960. |
| * relocatable and absolute symbols: Expression Section. |
| * relocatable output: Options. |
| * removing sections: Output Section Discarding. |
| * reporting bugs in ld: Reporting Bugs. |
| * requirements for BFD: BFD. |
| * retaining specified symbols: Options. |
| * ROM initialized data: Output Section LMA. |
| * round up location counter: Builtin Functions. |
| * runtime library name: Options. |
| * runtime library search path: Options. |
| * scaled integers: Constants. |
| * scommon section: Input Section Common. |
| * script files: Options. |
| * scripts: Scripts. |
| * search directory, from cmd line: Options. |
| * search path in linker script: File Commands. |
| * SEARCH_DIR(PATH): File Commands. |
| * SECT (MRI): MRI. |
| * section address: Output Section Address. |
| * section address in expression: Builtin Functions. |
| * section alignment, warnings on: Options. |
| * section data: Output Section Data. |
| * section fill pattern: Output Section Fill. |
| * section load address: Output Section LMA. |
| * section load address in expression: Builtin Functions. |
| * section name: Output Section Name. |
| * section name wildcard patterns: Input Section Wildcards. |
| * section size: Builtin Functions. |
| * section, assigning to memory region: Output Section Region. |
| * section, assigning to program header: Output Section Phdr. |
| * SECTIONS: SECTIONS. |
| * sections, discarding: Output Section Discarding. |
| * segment origins, cmd line: Options. |
| * segments, ELF: PHDRS. |
| * shared libraries: Options. |
| * SHORT(EXPRESSION): Output Section Data. |
| * SIZEOF(SECTION): Builtin Functions. |
| * SIZEOF_HEADERS: Builtin Functions. |
| * small common symbols: Input Section Common. |
| * SORT: Input Section Wildcards. |
| * SQUAD(EXPRESSION): Output Section Data. |
| * stack size: Options. |
| * standard Unix system: Options. |
| * start of execution: Entry Point. |
| * STARTUP(FILENAME): File Commands. |
| * strip all symbols: Options. |
| * strip debugger symbols: Options. |
| * stripping all but some symbols: Options. |
| * suffixes for integers: Constants. |
| * symbol defaults: Builtin Functions. |
| * symbol definition, scripts: Assignments. |
| * symbol names: Symbols. |
| * symbol tracing: Options. |
| * symbol versions: VERSION. |
| * symbol-only input: Options. |
| * symbols, from command line: Options. |
| * symbols, relocatable and absolute: Expression Section. |
| * symbols, retaining selectively: Options. |
| * synthesizing linker: Options. |
| * synthesizing on H8/300: H8/300. |
| * TARGET(BFDNAME): Format Commands. |
| * thumb entry point: ARM. |
| * traditional format: Options. |
| * unallocated address, next: Builtin Functions. |
| * undefined symbol: Options. |
| * undefined symbol in linker script: Miscellaneous Commands. |
| * undefined symbols, warnings on: Options. |
| * uninitialized data placement: Input Section Common. |
| * unspecified memory: Output Section Data. |
| * usage: Options. |
| * variables, defining: Assignments. |
| * verbose: Options. |
| * version: Options. |
| * version script: VERSION. |
| * version script, symbol versions: Options. |
| * VERSION {script text}: VERSION. |
| * versions of symbols: VERSION. |
| * warnings, on combining symbols: Options. |
| * warnings, on section alignment: Options. |
| * warnings, on undefined symbols: Options. |
| * what is this?: Overview. |
| * wildcard file name patterns: Input Section Wildcards. |
| |
| |