table of contents
LD.LLD(1) | User Commands | LD.LLD(1) |
NAME¶
ld.lld - manual page for ld.lld 5.0
DESCRIPTION¶
OVERVIEW: lld
USAGE: build-llvm/bin/ld.lld [options] <inputs>
OPTIONS:¶
- --allow-multiple-definition
- Allow multiple definitions
- --as-needed
- Only set DT_NEEDED for shared libraries if used
- --auxiliary <value>
- Set DT_AUXILIARY field to the specified name
- --Bdynamic
- Link against shared libraries
- --Bstatic
- Do not link against shared libraries
- --Bsymbolic-functions
- Bind defined function symbols locally
- --Bsymbolic
- Bind defined symbols locally
- --build-id=<value>
- Generate build ID note
- --build-id
- Generate build ID note
- --color-diagnostics=<value>
- Use colors in diagnostics
- --color-diagnostics
- Use colors in diagnostics
- --compress-debug-sections=<value>
- Compress DWARF debug sections
- --define-common
- Assign space to common symbols
- --defsym=<value>
- Define a symbol alias
- --demangle
- Demangle symbol names
- --disable-new-dtags
- Disable new dynamic tags
- --discard-all
- Delete all local symbols
- --discard-locals
- Delete temporary local symbols
- --discard-none
- Keep all symbols in the symbol table
- --dynamic-linker <value>
- Which dynamic linker to use
- --dynamic-list <value>
- Read a list of dynamic symbols
- --eh-frame-hdr
- Request creation of .eh_frame_hdr section and PT_GNU_EH_FRAME segment header
- --emit-relocs
- Generate relocations in output
- --enable-new-dtags
- Enable new dynamic tags
- --end-lib
- End a grouping of objects that should be treated as if they were together in an archive
- --entry <entry>
- Name of entry point symbol
- --error-limit <value>
- Maximum number of errors to emit before stopping (0 = no limit)
- --error-unresolved-symbols
- Report unresolved symbols as errors
- --exclude-libs <value>
- Exclude static libraries from automatic export
- --export-dynamic-symbol <value>
- Put a symbol in the dynamic symbol table
- --export-dynamic
- Put symbols in the dynamic symbol table
- --fatal-warnings
- Treat warnings as errors
- --filter=<value>
- Set DT_FILTER field to the specified name
- --fini <symbol>
- Specify a finalizer function
--format=<input-format> Change the input format of the inputs following this option
- --full-shutdown
- Perform a full shutdown instead of calling _exit
- --gc-sections
- Enable garbage collection of unused sections
- --gdb-index
- Generate .gdb_index section
- --hash-style <value>
- Specify hash style (sysv, gnu or both)
- --help
- Print option help
- --icf=all
- Enable identical code folding
- --icf=none
- Disable identical code folding
- --image-base=<value>
- Set the base address
- --init <symbol>
- Specify an initializer function
- --lto-aa-pipeline=<value>
- AA pipeline to run during LTO. Used in conjunction with -lto-newpm-passes
- --lto-newpm-passes=<value>
- Passes to run during LTO
- --lto-O<opt-level>
- Optimization level for LTO
- --lto-partitions=<value>
- Number of LTO codegen partitions
- -L <dir>
- Add a directory to the library search path
- -l <libName>
- Root name of library to use
- --Map <value>
- Print a link map to the specified file
- -m <value>
- Set target emulation
- --no-as-needed
- Always DT_NEEDED for shared libraries
- --no-color-diagnostics
- Do not use colors in diagnostics
- --no-define-common
- Do not assign space to common symbols
- --no-demangle
- Do not demangle symbol names
- --no-dynamic-linker
- Inhibit output of .interp section
- --no-gc-sections
- Disable garbage collection of unused sections
- --no-gnu-unique
- Disable STB_GNU_UNIQUE symbol binding
- --no-rosegment
- Do not put read-only non-executable sections in their own segment
- --no-threads
- Do not run the linker multi-threaded
- --no-undefined-version
- Report version scripts that refer undefined symbols
- --no-undefined
- Report unresolved symbols even if the linker is creating a shared library
- --no-whole-archive
- Restores the default behavior of loading archive members
- --noinhibit-exec
- Retain the executable output file whenever it is still usable
- --nopie
- Do not create a position independent executable
- --nostdlib
- Only search directories specified on the command line
- --oformat <format>
- Specify the binary format for the output object file
- --omagic
- Set the text and data sections to be readable and writable
- --opt-remarks-filename <value>
- YAML output file for optimization remarks
- --opt-remarks-with-hotness
- Include hotness informations in the optimization remarks file
- -O<value>
- Optimize output file size
- -o <path>
- Path to file to write output
- --pie
- Create a position independent executable
- --print-gc-sections
- List removed unused sections
- --print-map
- Print a link map to the standard output
- --relocatable
- Create relocatable object file
- --reproduce <value>
- Dump linker invocation and input files for debugging
- --retain-symbols-file=<file>
- Retain only the symbols listed in the file
- --rpath <value>
- Add a DT_RUNPATH to the output
- --rsp-quoting=<value>
- Quoting style for response files. Values supported: windows|posix
- --script <value>
- Read linker script
- --section-start <address>
- Set address of section
- Build a shared object
- --soname=<value>
- Set DT_SONAME
- --sort-section <value>
- Specifies sections sorting rule when linkerscript is used
- --start-lib
- Start a grouping of objects that should be treated as if they were together in an archive
- --strip-all
- Strip all symbols
- --strip-debug
- Strip debugging information
- --symbol-ordering-file <value>
- Layout sections in the order specified by symbol file
- --sysroot=<value>
- Set the system root
- --target1-abs
- Interpret R_ARM_TARGET1 as R_ARM_ABS32
- --target1-rel
- Interpret R_ARM_TARGET1 as R_ARM_REL32
- --target2=<type>
- Interpret R_ARM_TARGET2 as <type>, where <type> is one of rel, abs, or got-rel
- --Tbss <value>
- Same as --section-start with .bss as the sectionname
- --Tdata <value>
- Same as --section-start with .data as the sectionname
- --thinlto-cache-dir=<value>
- Path to ThinLTO cached object file directory
- --thinlto-cache-policy <value>
- Pruning policy for the ThinLTO cache
- --thinlto-jobs=<value>
- Number of ThinLTO jobs
- --threads
- Run the linker multi-threaded
- --trace-symbol <value>
- Trace references to symbols
- --trace
- Print the names of the input files
- --Ttext <value>
- Same as --section-start with .text as the sectionname
- --undefined <value>
- Force undefined symbol during linking
- --unresolved-symbols=<value>
- Determine how to handle unresolved symbols
- --verbose
- Verbose mode
- --version-script <value>
- Read a version script
- --version
- Display the version number and exit
- -v
- Display the version number
- --warn-common
- Warn about duplicate common symbols
- --warn-unresolved-symbols
- Report unresolved symbols as warnings
- --whole-archive
- Force load of all members in a static library
- --wrap <symbol>
- Use wrapper functions for symbol
- -z <option>
- Linker option extensions
build-llvm/bin/ld.lld: supported targets: elf32-i386 elf32-iamcu elf32-littlearm elf32-ntradbigmips elf32-ntradlittlemips elf32-powerpc elf32-tradbigmips elf32-tradlittlemips elf32-x86-64 elf64-amdgpu elf64-littleaarch64 elf64-powerpc elf64-tradbigmips elf64-tradlittlemips elf64-x86-64
SEE ALSO¶
The full documentation for ld.lld is maintained as a Texinfo manual. If the info and ld.lld programs are properly installed at your site, the command
- info ld.lld
should give you access to the complete manual.
March 2018 | ld.lld 5.0 |