Index
Symbols
| |
| /usr/lib | 18, 40, 42, 53 |
| /usr/lib/ld.so.1 | 39 |
A
| |
| ABI (see Application Binary Interface) |
| Application Binary Interface | 4, 80 |
| .....building a conformingapplication | 15 |
| ar(1) | 12 |
| archives | 14 |
| .....inclusion of shared objects in | 71 |
| .....link-editor processing | 12 |
| .....multiple passes through | 12 |
| .....naming conventions | 14 |
| as(1) | 2 |
B
| |
| base address | 135 |
| binding | 1 |
| .....lazy | 46 |
C
| |
| cc(1) | 1, 2, 9 |
| COMMON | 107 |
| compilation environment | 1, 4, 14, 68 |
D
| |
| data representation | 99 |
| debugging aids |
| .....link-editing | 34 |
| .....runtime linking | 62 |
| dlclose(3X) | 51 |
| dlerror(3X) | 51 |
| dlfcn.h | 52 |
| dlopen(3X) | 40, 51, 52 to 58 |
| .....effects of ordering | 57 |
| .....modes |
| ............RTLD_GLOBAL | 58 |
| ............RTLD_LAZY | 54 |
| ............RTLD_NOW | 54 |
| .....shared object naming conventions | 69 |
| dlsym(3X) | 40, 51, 58 to 61 |
| .....special handle (seeRTLD_NEXT) |
| dump(1) | 5, 41, 44, 83, 85 |
| dynamic executables | 2, 3 |
| dynamic information tags |
| .....NEEDED | 41 |
| .....RPATH | 42 |
| .....SONAME | 70 |
| .....TEXTREL | 85 |
| dynamic linking | 4 |
| |
| .....implementation | 124 to 129, 143 |
E
| |
| ELF | 2, 7 |
| ELF (see also object files) | 97 |
| elf(3E) | 5 |
| environment variables |
| .....LD_BIND_NOT | 65 |
| .....LD_BIND_NOW | 46, 64 |
| .....LD_DEBUG | 62 |
| .....LD_LIBRARY_PATH | 17, 42, 53, 77 |
| .....LD_OPTIONS | 10, 35 |
| .....LD_PRELOAD | 48 |
| .....LD_RUN_PATH | 19 |
| error messages |
| .....link-editor |
| ............illegal argument to option | 10 |
| ............illegal option | 10 |
| ............incompatible options | 11 |
| ............multiple instances of anoption | 10 |
| ............multiply defined symbols | 27 |
| ............relocations against non-writablesections | 86 |
| ............shared object name conflicts | 72 |
| ............soname conflicts | 72 |
| ............symbol warnings | 25, 26 |
| ............undefined symbols | 28 |
| ............undefined symbols from animplicit reference | 29 |
| .....runtime linker |
| ............copy relocation sizedifferences | 95 |
| ............relocation errors | 47 |
| ............unable to find shared object | 43, 53 |
| ............unable to locate symbol | 60 |
| exec(2) | 7, 39, 98 |
| executable and linking format | 2, 7 |
F
| |
| f77(1) | 9 |
| filters (see shared objects) |
G
| |
| generating a shared object | 30 |
| generating an executable | 28 |
| generating the output file image | 33 |
| global offset table | 34, 44, 85, 155 to 156 |
| global symbols | 120 to 122 |
I
| |
| initialization and termination | 9, 19, 50 |
| input file processing | 11 |
| interposition | 23, 45, 49, 61 |
| interpreter (see also runtime linker) |
L
| |
| lazy binding | 46 |
| ld(1) | 1, 2 |
| ld.so.1 | 1, 39 |
| LD_BIND_NOT | 65 |
| LD_BIND_NOW | 46, 64 |
| LD_DEBUG | 62 |
| LD_DEBUG_OUTPUT | 63 |
| LD_LIBRARY_PATH | 17, 42, 53, 77 |
| LD_OPTIONS | 10, 35 |
| LD_PRELOAD | 48 |
| LD_RUN_PATH | 19 |
| ldd(1) | 5, 41, 43, 45, 47 |
| libld.so.1 | 52 |
| libraries |
| ......archives | 14 |
| ......naming conventions | 14 |
| ......shared | 124, 129, 143 |
| link-editing | 2, 119 to 129, 143 |
| ......adding additional libraries | 14 |
| ......dynamic | 124 to 129, 143 |
| ......input file processing | 11 |
| ......library input processing | 11 |
| ......library linking options | 11 |
| ......mixing shared objects andarchives | 15 |
| ......multiply defined symbols | 121 to 122 |
| |
| link-editor | 1, 7 |
| .....archive processing | 12 |
| .....debugging aids | 34 |
| .....direct invocation | 9 |
| .....invoking directly | 8 |
| .....invoking using compiler driver | 9 |
| .....overview | 7 |
| .....position of files on command line | 16 |
| .....search paths | 16, 17 |
| .....sections | 7 |
| .....segments | 7 |
| .....shared object processing | 13 |
| .....specifying options | 10 |
| link-editor options |
| .....-a | 184 |
| .....-B | 15, 184 |
| .....-D | 35 |
| .....-d | 183, 184 |
| .....-e | 34 |
| .....-F | 78 |
| .....-G | 67 |
| .....-h | 70, 76, 185 |
| .....-i | 18 |
| .....-L | 17, 183 |
| .....-l | 11, 14, 42, 68, 74, 183 |
| .....-M | 8, 165 |
| .....-m | 14, 24 |
| .....-R | 19, 77, 185 |
| .....-r | 184 |
| .....-s | 33 |
| .....-t | 25, 26 |
| .....-u | 32 |
| .....-Y | 17 |
| .....-z defs | 30 |
| .....-z muldefs | 27 |
| .....-z nodefs | 28, 47 |
| .....-z text | 86, 184 |
| link-editor output |
| .....dynamic executables | 2 |
| .....relocatable objects | 2 |
| .....shared objects | 2 |
| .....static executables | 2 |
| local symbols | 120 to 122 |
| lorder(1) | 13, 36 |
M
| |
| mapfiles | 165 to 181 |
| ......defaults | 175 |
| ......error messages | 179 |
| ......example | 173 |
| ......map structure | 176 |
| ......mapping directives | 171 |
| ......segment declarations | 167 |
| ......size-symbol declarations | 173 |
| ......structure | 166 |
| ......syntax | 166 |
| ......usage | 166 |
| mmap(2) | 39 |
| multiply defined symbols | 33, 120 to 122 |
N
| |
| naming conventions |
| ......archives | 14 |
| ......libraries | 14 |
| ......shared objects | 14, 68 |
| NEEDED | 41 |
| nm(1) | 5, 83 |
O
| |
| object files | 2, 97 |
| ......base address | 135 |
| ......data representation | 99 |
| ......global offset table (see global offsettable) |
| ......note section | 138 to 140 |
| ......program header | 132 to 140 |
| ......program interpretor (see programinterpretor) |
| ......program linking,?? to129 |
| ......program loading | 140 |
| ......relocation | 124 to 129, 155 |
| ......section alignment | 109 |
| ......section attributes | 113 to 117 |
| ......section header | 106 to 117 |
| ......section names | 117 |
| ......section types | 110 to 117 |
| ......segment contents | 137 to 138 |
| ......segment permissions | 136 to 137 |
| |
| .....segment types | 133 to 135 |
| .....string table | 118 to 119 |
| .....symbol table | 119 to 124 |
P
| |
| paging | 140 to 143 |
| performance |
| .....allocating buffers dynamically | 89 |
| .....collapsing multiple definitions | 88 |
| .....improving locality of references | 90 |
| .....maximizing shareability | 86 |
| .....minimizing data segment | 87 |
| .....position-independent code (seeposition-dependent code) |
| .....relocations | 90 |
| .....the underlying system | 84 |
| .....using automatic variables | 89 |
| position-independent code | 85, 146 to 154, 155 |
| procedure linkage table | 34, 46, 85 |
| program interpreter | 39, 147 |
| .....(see also runtime linker) |
R
| |
| relocatable objects | 2 |
| relocation | 43 to 48, 90 to 95, 124 to 129 |
| .....copy | 91 |
| .....data references | 46 |
| .....function references | 46 |
| .....non-symbolic | 44, 90 |
| .....runtime linker |
| ............symbol lookup | 45, 46 |
| .....symbolic | 44, 90 |
| RPATH (see also runpath) | 42 |
| RTLD_GLOBAL | 58 |
| RTLD_LAZY | 54 |
| RTLD_NEXT | 58 |
| RTLD_NOW | 54 |
| runpath | 18, 42, 53, 65, 77 |
| runtime environment | 4, 14, 68 |
| Runtime Linker | 147 |
| runtime linker | 1, 3 |
| ......adding additional objects | 48 |
| ......adding additional shared objects | 52 |
| ......initialization and terminationroutines | 50 |
| ......lazy binding | 46 |
| ......programming interface (see alsodlopen(3X) family ofroutines) | 50 |
| ......relocation processing | 43 |
| ......search paths | 18, 40 |
| ......shared object processing | 40 |
| runtime linking | 3 |
S
| |
| SCD (see SPARC Compliance Definition) |
| search paths |
| ......link-editor | 16 |
| ......runtime linker | 18, 40 |
| section types |
| .......bss | 7, 91 |
| .......data | 7, 87 |
| .......dynamic | 33, 39, 41 |
| .......dynstr | 33 |
| .......dynsym | 33 |
| .......fini | 19, 50 |
| .......got | 34, 44 |
| .......init | 19, 50 |
| .......interp | 39 |
| .......plt | 34, 46 |
| .......rodata | 87 |
| .......strtab | 7, 33 |
| .......symtab | 7, 33 |
| .......text | 7 |
| sections | 7, 82 |
| ......(see also section types) |
| segments | 7, 82 |
| ......data | 82, 84 |
| ......text | 82, 84 |
| shared libraries (see shared objects) |
| shared objects | 2, 4, 40 |
| ......as filters | 78 |
| ......building (see also performance) | 67 |
| ......dependency ordering | 77 |
| ......explicit definition | 29 |
| |
| .....implementation | 124 to 129, 143 |
| .....implicit definition | 29 |
| .....link-editor processing | 13 |
| .....naming conventions | 14, 68 |
| .....recording a runtime name | 69 |
| .....versioning | 73 |
| .....with dependencies | 76 |
| SHN_ABS | 123 |
| SHN_COMMON | 123 |
| size(1) | 81 |
| SONAME | 70 |
| SPARC Compliance Definition | 5 |
| static executables | 2 |
| strings(1) | 88 |
| strip(1) | 33 |
| symbol reserved names | 33 |
| ....._DYNAMIC | 33 |
| ....._edata | 33 |
| ....._end | 33 |
| ....._etext | 33 |
| ....._fini | 19 |
| ....._GLOBAL_OFFSET_TABLE_ | 34 |
| ....._init | 19 |
| ....._PROCEDURE_LINKAGE_TABLE_ | 34 |
| ....._start | 34 |
| .....main | 34 |
| symbol resolution | 20, 21, 33 |
| .....complex | 25 |
| .....fatal | 26 |
| .....interposition | 45 |
| .....multiple definitions | 13 |
| .....simple | 22 |
| symbols |
| .....archive extraction | 12 |
| .....COMMON | 21 |
| .....defined | 21 |
| .....definition | 12, 27 |
| .....existance test | 30 |
| .....global | 22 |
| .....local | 20 |
| .....reference | 12, 27 |
| .....runtime lookup | 54 to 62 |
| ............deferred | 46 |
| .....scope | 54 to 58 |
| ......tentative | 12, 21, 31 |
| ............ordering in the output file | 31 |
| ......undefined | 12, 21, 27, 28, 30 |
| ......weak | 12, 22, 30 |
T
| |
| tentative symbols | 12, 21 |
| TEXTREL | 85 |
| tsort(1) | 13, 36 |
U
V
| |
| versioning |
| ......shared objects | 73 |
| virtual addressing | 140 |
W
| |
| weak symbols | 22, 120 to 122 |
| ......undefined | 30 |
|