OVERVIEW: lld
USAGE: /usr/bin/ld.lld [options] file...
OPTIONS:
-( Alias for --start-group
-) Alias for --end-group
--allow-multiple-definition
Allow multiple definitions
--allow-shlib-undefined Allow unresolved references in shared libraries (default when linking a shared library)
--apply-dynamic-relocs Apply link-time values for dynamic relocations
--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 (default)
--Bno-symbolic Don't bind default visibility defined symbols locally for -shared (default)
--Bshareable Alias for --shared
--Bstatic Do not link against shared libraries
--Bsymbolic-functions Bind default visibility defined function symbols locally for -shared
--Bsymbolic-non-weak-functions
Bind default visibility defined STB_GLOBAL function symbols locally for -shared
--Bsymbolic Bind default visibility defined symbols locally for -shared
--build-id=[fast,md5,sha1,uuid,0x<hexstring>]
Generate build ID note
--build-id Alias for --build-id=fast
-b <value> Alias for --format
--call-graph-ordering-file=<value>
Layout sections to optimize the given callgraph
--call-graph-profile-sort
Reorder sections with call graph profile (default)
--call_shared Alias for --Bdynamic
--check-sections Check section addresses for overlaps (default)
--color-diagnostics=[auto,always,never]
Use colors in diagnostics (default: auto)
--color-diagnostics Alias for --color-diagnostics=always
--compress-debug-sections=[none,zlib]
Compress DWARF debug sections
--cref Output cross reference table. If -Map is specified, print to the map file
--dc Alias for --define-common
--define-common Assign space to common symbols
--defsym=<symbol>=<value>
Define a symbol alias
--demangle Demangle symbol names (default)
--dependency-file=<file>
Write a dependency file
--dependent-libraries Process dependent library specifiers from input files (default)
--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
--dn Alias for --Bstatic
--dp Alias for --define-common
--dynamic-linker=<value>
Which dynamic linker to use
--dynamic-list=<file> Similar to --export-dynamic-symbol-list. When creating a shared object, this additionally implies -Bsymbolic but does not set DF_SYMBOLIC
--dy Alias for --Bdynamic
-d Alias for --define-common
--EB Select the big-endian format in OUTPUT_FORMAT
--eh-frame-hdr Request creation of .eh_frame_hdr section and PT_GNU_EH_FRAME segment header
--EL Select the little-endian format in OUTPUT_FORMAT
--emit-relocs Generate relocations in output
--enable-new-dtags Enable new dynamic tags (default)
--end-group Ignored for compatibility with GNU unless you pass --warn-backrefs
--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-handling-script=<value>
Specify an error handling script
--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
--execute-only Mark executable sections unreadable
--export-dynamic-symbol-list=file
Read a list of dynamic symbol patterns. Apply --export-dynamic-symbol on each pattern
--export-dynamic-symbol=glob
(executable) Put matched symbols in the dynamic symbol table. (shared object) References to matched non-local STV_DEFAULT symbols shouldn't be bound to definitions within the shared object. Does not imply -Bsymbolic.
--export-dynamic Put symbols in the dynamic symbol table
-E Alias for --export-dynamic
-e <value> Alias for --entry
--fatal-warnings Treat warnings as errors
--filter=<value> Set DT_FILTER field to the specified name
--fini=<symbol> Specify a finalizer function
--fix-cortex-a53-843419 Apply fixes for AArch64 Cortex-A53 erratum 843419
--fix-cortex-a8 Apply fixes for ARM Cortex-A8 erratum 657417
--format=[default,elf,binary]
Change the input format of the inputs following this option
--fortran-common Search archive members for definitions to override COMMON symbols (default)
-F <value> Alias for --filter
-f <value> Alias for --auxiliary
--gc-sections Enable garbage collection of unused sections
--gdb-index Generate .gdb_index section
--gnu-unique Enable STB_GNU_UNIQUE symbol binding (default)
--hash-style=<value> Specify hash style (sysv, gnu or both)
--help Print option help
-h <value> Alias for --soname
--icf=all Enable identical code folding
--icf=none Disable identical code folding (default)
--icf=safe Enable safe identical code folding
--ignore-data-address-equality
lld can break the address equality of data
--ignore-function-address-equality
lld can break the address equality of functions
--image-base=<value> Set the base address
--init=<symbol> Specify an initializer function
--just-symbols=<value> Just link symbols
--keep-unique=<value> Do not fold this symbol during ICF
--library-path=<value> Add <dir> to the library search path
--library-path <value> Add <dir> to the library search path
--library=<value> Search for library <libname>
--library <value> Search for library <libname>
--lto-aa-pipeline=<value>
AA pipeline to run during LTO. Used in conjunction with -lto-newpm-passes
--lto-basic-block-sections=<value>
Enable basic block sections for LTO
--lto-cs-profile-file=<value>
Context sensitive profile file path
--lto-cs-profile-generate
Perform context sensitive PGO instrumentation
--lto-debug-pass-manager
Debug new pass manager
--lto-emit-asm Emit assembly code
--lto-legacy-pass-manager
Use the legacy pass manager in LLVM
--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
--lto-pgo-warn-mismatch turn on warnings about profile cfg mismatch (default)>
--lto-sample-profile=<value>
Sample profile file path
--lto-unique-basic-block-section-names
Give unique names to every basic block section for LTO
--lto-whole-program-visibility
Asserts that the LTO link has whole program visibility
-L <dir> Add <dir> to the library search path
-l <libname> Search for library <libname>
--Map=<value> Print a link map to the specified file
--merge-exidx-entries Enable merging .ARM.exidx entries (default)
--mllvm=<value> Additional arguments to forward to LLVM's option processing
--mmap-output-file Mmap the output file for writing (default)
-M Alias for --print-map
-m <value> Set target emulation
--nmagic Do not page align sections, link against static libraries.
--no-allow-multiple-definition
Do not allow multiple definitions (default)
--no-allow-shlib-undefined
Do not allow unresolved references in shared libraries (default when linking an executable)
--no-apply-dynamic-relocs
Do not apply link-time values for dynamic relocations (default)
--no-as-needed Always set DT_NEEDED for shared libraries (default)
--no-call-graph-profile-sort
Do not reorder sections with call graph profile
--no-check-sections Do not check section addresses for overlaps
--no-color-diagnostics Alias for --color-diagnostics=never
--no-define-common Do not assign space to common symbols
--no-demangle Do not demangle symbol names
--no-dependent-libraries
Ignore dependent library specifiers from input files
--no-dynamic-linker Inhibit output of .interp section
--no-eh-frame-hdr Do not create .eh_frame_hdr section
--no-execute-only Mark executable sections readable (default)
--no-export-dynamic Do not put symbols in the dynamic symbol table (default)
--no-fatal-warnings Do not treat warnings as errors (default)
--no-fortran-common Do not search archive members for definitions to override COMMON symbols
--no-gc-sections Disable garbage collection of unused sections (default)
--no-gdb-index Do not generate .gdb_index section (default)
--no-gnu-unique Disable STB_GNU_UNIQUE symbol binding
--no-lto-legacy-pass-manager
Use the new pass manager in LLVM
--no-lto-pgo-warn-mismatch
turn off warnings about profile cfg mismatch
--no-lto-unique-basic-block-section-names
Do not give unique names to every basic block section for LTO (default)
--no-lto-whole-program-visibility
Asserts that the LTO link does not have whole program visibility
--no-merge-exidx-entries
Disable merging .ARM.exidx entries
--no-mmap-output-file Do not mmap the output file for writing
--no-nmagic Page align sections (default)
--no-omagic Do not set the text data sections to be writable, page align sections (default)
--no-optimize-bb-jumps Do not remove any direct jumps at the end to the next basic block (default)
--no-pcrel-optimize (PowerPC64) Disable PC-relative optimizations
--no-pie Do not create a position independent executable (default)
--no-power10-stubs Alias for --power10-stubs=no
--no-print-gc-sections Do not list removed unused sections (default)
--no-print-icf-sections Do not list identical folded sections (default)
--no-relax Disable target-specific relaxations
--no-rosegment Do not put read-only non-executable sections in their own segment
--no-toc-optimize (PowerPC64) Disable TOC related optimizations
--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-use-android-relr-tags
Use SHT_RELR / DT_RELR* tags (default)
--no-warn-backrefs Do not warn about backward symbol references to extract archive members (default)
--no-warn-common Do not warn about duplicate common symbols (default)
--no-warn-ifunc-textrel Do not warn about using ifunc symbols with text relocations (default)
--no-warn-symbol-ordering
Do not warn about problems with the symbol ordering file
--no-whole-archive Do not force load of all members in a static library (default)
--noinhibit-exec Retain the executable output file whenever it is still usable
--non_shared Alias for --Bstatic
--nostdlib Only search directories specified on the command line
-N Alias for --omagic
-n Alias for --nmagic
--oformat=[elf,binary] Specify the binary format for the output object file
--omagic Set the text and data sections to be readable and writable, do not page align sections, link against static libraries
--opt-remarks-filename <value>
YAML output file for optimization remarks
--opt-remarks-format <value>
The format used for serializing remarks (default: YAML)
--opt-remarks-hotness-threshold=<value>
Minimum profile count required for an optimization remark to be output. Use 'auto' to apply the threshold from profile summary.
--opt-remarks-passes <value>
Regex for the passes that need to be serialized to the output file
--opt-remarks-with-hotness
Include hotness information in the optimization remarks file
--optimize-bb-jumps Remove direct jumps at the end to the next basic block
--orphan-handling=<value>
Control how orphan sections are handled when linker script used
--output=<value> Alias for -o
--output <value> Alias for -o
-O <value> Optimize output file size
-o <path> Path to file to write output
--pack-dyn-relocs=[none,android,relr,android+relr]
Pack dynamic relocations in the given format
--pcrel-optimize (PowerPC64) Enable PC-relative optimizations (default)
--pic-executable Alias for --pie
--pic-veneer Always generate position independent thunks (veneers)
--pie Create a position independent executable
--plugin-opt=-<value> Specify an LLVM option for compatibility with LLVMgold.so
--plugin-opt=cs-profile-generate
Alias for --lto-cs-profile-generate
--plugin-opt=cs-profile-path=<value>
Alias for --lto-cs-profile-file
--plugin-opt=debug-pass-manager
Alias for --lto-debug-pass-manager
--plugin-opt=disable-verify
Alias for --disable-verify
--plugin-opt=dwo_dir=<value>
Directory to store .dwo files when LTO and debug fission are used
--plugin-opt=emit-asm Alias for --lto-emit-asm
--plugin-opt=jobs=<value>
Alias for --thinlto-jobs
--plugin-opt=legacy-pass-manager
Alias for --no-legacy-pass-manager
--plugin-opt=lto-partitions=<value>
Alias for --lto-partitions
--plugin-opt=new-pass-manager
Alias for --no-lto-legacy-pass-manager
--plugin-opt=obj-path=<value>
Alias for --lto-obj-path=
--plugin-opt=opt-remarks-filename=<value>
Alias for --opt-remarks-filename
--plugin-opt=opt-remarks-format=<value>
Alias for --opt-remarks-format
--plugin-opt=opt-remarks-hotness-threshold=<value>
Alias for --opt-remarks-hotness-threshold
--plugin-opt=opt-remarks-passes=<value>
Alias for --opt-remarks-passes
--plugin-opt=opt-remarks-with-hotness
Alias for --opt-remarks-with_hotness
--plugin-opt=O<value> Alias for --lto-O
--plugin-opt=sample-profile=<value>
Alias for --lto-sample-profile
--plugin-opt=save-temps Alias for --save-temps
--plugin-opt=thinlto-emit-imports-files
Alias for --thinlto-emit-imports-files
--plugin-opt=thinlto-index-only=<value>
Alias for --thinlto-index-only=
--plugin-opt=thinlto-index-only
Alias for --thinlto-index-only
--plugin-opt=thinlto-object-suffix-replace=<value>
Alias for --thinlto-object-suffix-replace=
--plugin-opt=thinlto-prefix-replace=<value>
Alias for --thinlto-prefix-replace=
--plugin=<value> Ignored for compatibility with GNU linkers
--pop-state Restore the states saved by --push-state
--power10-stubs=<mode> Whether to use Power10 instructions in call stubs for R_PPC64_REL24_NOTOC and TOC/NOTOC interworking (yes (default): use; no: don't use). "auto" is currently the same as "yes"
--power10-stubs Alias for --power10-stubs=auto
--print-archive-stats=<value>
Write archive usage statistics to the specified file. Print the numbers of members and extracted members for each archive
--print-gc-sections List removed unused sections
--print-icf-sections List identical folded sections
--print-map Print a link map to the standard output
--print-symbol-order=<value>
Print a symbol order specified by --call-graph-ordering-file into the specified file
--push-state Save the current state of --as-needed, -static and --whole-archive
-q Alias for --emit-relocs
--relax Enable target-specific relaxations if supported (default)
--relocatable Create relocatable object file
--reproduce=<value> Write tar file containing inputs and command to reproduce link
--retain-symbols-file=<file>
Retain only the symbols listed in the file
--rosegment Put read-only non-executable sections in their own segment (default)
--rpath=<value> Add a DT_RUNPATH to the output
--rsp-quoting=[posix,windows]
Quoting style for response files
-R <value> Alias for --rpath
-r Alias for --relocatable
--save-temps Save intermediate LTO compilation results
--script=<value> Read linker script
--section-start=<address>
Set address of section
--shared Build a shared object
--shuffle-sections=<section-glob>=<seed>
Shuffle matched sections using the given seed before mapping them to the output sections. If -1, reverse the section order. If 0, use a random seed
--soname=<value> Set DT_SONAME
--sort-section=<value> Specifies sections sorting rule when linkerscript is used
--split-stack-adjust-size=<value>
Specify adjustment to stack size when a split-stack function calls a non-split-stack function
--start-group Ignored for compatibility with GNU unless you pass --warn-backrefs
--start-lib Start a grouping of objects that should be treated as if they were together in an archive
--static Alias for --Bstatic
--strip-all Strip all symbols. Implies --strip-debug
--strip-debug Strip debugging information
--symbol-ordering-file=<value>
Layout sections to place symbols in the order specified by symbol ordering file
--sysroot=<value> Set the system root
-S Alias for --strip-debug
-s Alias for --strip-all
--target1-abs Interpret R_ARM_TARGET1 as R_ARM_ABS32 (default)
--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. Default to --threads=
--thinlto-single-module=<value>
Specific a single module to compile in ThinLTO mode, for debugging only
--threads=<value> Number of threads. '1' disables multi-threading. By default all available hardware threads are used
--time-trace-file=<value>
Specify time trace output file
--time-trace-granularity=<value>
Minimum time granularity (in microseconds) traced by time profiler
--time-trace Record time trace
--toc-optimize (PowerPC64) Enable TOC related optimizations (default)
--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
-T <value> Alias for --script
-t Alias for --trace
--undefined-glob=<pattern>
Force undefined symbol during linking
--undefined-version Allow unused version in version script (default)
--undefined=<symbol> Force undefined symbol during linking
--unique Creates a separate output section for every orphan input section
--unresolved-symbols=<value>
Determine how to handle unresolved symbols
--use-android-relr-tags Use SHT_ANDROID_RELR / DT_ANDROID_RELR* tags instead of SHT_RELR / DT_RELR*
-u <value> Alias for --undefined
--verbose Verbose mode
--version-script=<value>
Read a version script
--version Display the version number and exit
--vs-diagnostics Format diagnostics for Visual Studio compatibility
-V Alias for --version
-v Display the version number
--warn-backrefs-exclude=<glob>
Glob describing an archive (or an object file within --start-lib) which should be ignored for --warn-backrefs.
--warn-backrefs Warn about backward symbol references to extract archive members
--warn-common Warn about duplicate common symbols
--warn-ifunc-textrel Warn about using ifunc symbols with text relocations
--warn-symbol-ordering Warn about problems with the symbol ordering file (default)
--warn-unresolved-symbols
Report unresolved symbols as warnings
--whole-archive Force load of all members in a static library
--why-extract=<value> Print to a file about why archive members are extracted
--wrap=<symbol> Redirect symbol references to __wrap_symbol and __real_symbol references to symbol
-X Alias for --discard-locals
-x Alias for --discard-all
-y <value> Alias for --trace-symbol
-z <option> Linker option extensions
/usr/bin/ld.lld: supported targets: elf
Options (244)
| Option | Description | Source |
|---|---|---|
--allow-multiple-definition | Allow multiple definitions | help |
--apply-dynamic-relocs | Apply link-time values for dynamic relocations | help |
--as-needed | Only set DT_NEEDED for shared libraries if used | help |
--auxiliary value | Set DT_AUXILIARY field to the specified name | help |
--Bdynamic | Link against shared libraries (default) | help |
--Bno-symbolic | Don't bind default visibility defined symbols locally for -shared (default) | help |
--Bshareable | Alias for --shared | help |
--Bstatic | Do not link against shared libraries | help |
--Bsymbolic-functions | Bind default visibility defined function symbols locally for -shared | help |
--Bsymbolic-non-weak-functions | Bind default visibility defined STB_GLOBAL function symbols locally for -shared | help |
--Bsymbolic | Bind default visibility defined symbols locally for -shared | help |
--build-id fast | Generate build ID note | help |
-b value | Alias for --format | help |
--call-graph-ordering-file value | Layout sections to optimize the given callgraph | help |
--call-graph-profile-sort | Reorder sections with call graph profile (default) | help |
--call_shared | Alias for --Bdynamic | help |
--check-sections | Check section addresses for overlaps (default) | help |
--color-diagnostics auto | Use colors in diagnostics (default: auto) | help |
--compress-debug-sections none | Compress DWARF debug sections | help |
--cref | Output cross reference table. | help |
--dc | Alias for --define-common | help |
--define-common | Assign space to common symbols | help |
--defsym symbol>=<value | Define a symbol alias | help |
--demangle | Demangle symbol names (default) | help |
--dependency-file file | Write a dependency file | help |
--dependent-libraries | Process dependent library specifiers from input files (default) | help |
--disable-new-dtags | Disable new dynamic tags | help |
--discard-all | Delete all local symbols | help |
--discard-locals | Delete temporary local symbols | help |
--discard-none | Keep all symbols in the symbol table | help |
--dn | Alias for --Bstatic | help |
--dp | Alias for --define-common | help |
--dynamic-linker value | Which dynamic linker to use | help |
--dynamic-list file | Similar to --export-dynamic-symbol-list. | help |
--dy | Alias for --Bdynamic | help |
-d | Alias for --define-common | help |
--EB | Select the big-endian format in OUTPUT_FORMAT | help |
--eh-frame-hdr | Request creation of .eh_frame_hdr section and PT_GNU_EH_FRAME segment header | help |
--EL | Select the little-endian format in OUTPUT_FORMAT | help |
--emit-relocs | Generate relocations in output | help |
--enable-new-dtags | Enable new dynamic tags (default) | help |
--end-group | Ignored for compatibility with GNU unless you pass --warn-backrefs | help |
--end-lib | End a grouping of objects that should be treated as if they were together in an archive | help |
--entry entry | Name of entry point symbol | help |
--error-handling-script value | Specify an error handling script | help |
--error-limit value | Maximum number of errors to emit before stopping (0 = no limit) | help |
--error-unresolved-symbols | Report unresolved symbols as errors | help |
--exclude-libs value | Exclude static libraries from automatic export | help |
--execute-only | Mark executable sections unreadable | help |
--export-dynamic-symbol-list file | Read a list of dynamic symbol patterns. | help |
--export-dynamic-symbol glob | (executable) Put matched symbols in the dynamic symbol table. | help |
--export-dynamic | Put symbols in the dynamic symbol table | help |
-E | Alias for --export-dynamic | help |
-e value | Alias for --entry | help |
--fatal-warnings | Treat warnings as errors | help |
--filter value | Set DT_FILTER field to the specified name | help |
--fini symbol | Specify a finalizer function | help |
--fix-cortex-a8 | Apply fixes for ARM Cortex-A8 erratum 657417 | help |
--format default | Change the input format of the inputs following this option | help |
--fortran-common | Search archive members for definitions to override COMMON symbols (default) | help |
-F value | Alias for --filter | help |
-f value | Alias for --auxiliary | help |
--gc-sections | Enable garbage collection of unused sections | help |
--gdb-index | Generate .gdb_index section | help |
--gnu-unique | Enable STB_GNU_UNIQUE symbol binding (default) | help |
--hash-style value | Specify hash style (sysv, gnu or both) | help |
--help | Print option help | help |
-h value | Alias for --soname | help |
--icf all | Enable identical code folding | help |
--ignore-data-address-equality | lld can break the address equality of data | help |
--ignore-function-address-equality | lld can break the address equality of functions | help |
--image-base value | Set the base address | help |
--init symbol | Specify an initializer function | help |
--just-symbols value | Just link symbols | help |
--keep-unique value | Do not fold this symbol during ICF | help |
--library-path value | Add <dir> to the library search path | help |
--library value | Search for library <libname> | help |
--lto-aa-pipeline value | AA pipeline to run during LTO. | help |
--lto-basic-block-sections value | Enable basic block sections for LTO | help |
--lto-cs-profile-file value | Context sensitive profile file path | help |
--lto-cs-profile-generate | Perform context sensitive PGO instrumentation | help |
--lto-debug-pass-manager | Debug new pass manager | help |
--lto-emit-asm | Emit assembly code | help |
--lto-legacy-pass-manager | Use the legacy pass manager in LLVM | help |
--lto-newpm-passes value | Passes to run during LTO | help |
--lto-O opt-level | Optimization level for LTO | help |
--lto-partitions value | Number of LTO codegen partitions | help |
--lto-sample-profile value | Sample profile file path | help |
--lto-unique-basic-block-section-names | Give unique names to every basic block section for LTO | help |
--lto-whole-program-visibility | Asserts that the LTO link has whole program visibility | help |
-L dir | Add <dir> to the library search path | help |
-l libname | Search for library <libname> | help |
--Map value | Print a link map to the specified file | help |
--merge-exidx-entries | Enable merging .ARM.exidx entries (default) | help |
--mllvm value | Additional arguments to forward to LLVM's option processing | help |
--mmap-output-file | Mmap the output file for writing (default) | help |
-M | Alias for --print-map | help |
-m value | Set target emulation | help |
--nmagic | Do not page align sections, link against static libraries. | help |
--no-allow-multiple-definition | Do not allow multiple definitions (default) | help |
--no-allow-shlib-undefined | Do not allow unresolved references in shared libraries (default when linking an executable) | help |
--no-apply-dynamic-relocs | Do not apply link-time values for dynamic relocations (default) | help |
--no-as-needed | Always set DT_NEEDED for shared libraries (default) | help |
--no-call-graph-profile-sort | Do not reorder sections with call graph profile | help |
--no-check-sections | Do not check section addresses for overlaps | help |
--no-color-diagnostics | Alias for --color-diagnostics=never | help |
--no-define-common | Do not assign space to common symbols | help |
--no-demangle | Do not demangle symbol names | help |
--no-dependent-libraries | Ignore dependent library specifiers from input files | help |
--no-dynamic-linker | Inhibit output of .interp section | help |
--no-eh-frame-hdr | Do not create .eh_frame_hdr section | help |
--no-execute-only | Mark executable sections readable (default) | help |
--no-export-dynamic | Do not put symbols in the dynamic symbol table (default) | help |
--no-fatal-warnings | Do not treat warnings as errors (default) | help |
--no-fortran-common | Do not search archive members for definitions to override COMMON symbols | help |
--no-gc-sections | Disable garbage collection of unused sections (default) | help |
--no-gdb-index | Do not generate .gdb_index section (default) | help |
--no-gnu-unique | Disable STB_GNU_UNIQUE symbol binding | help |
--no-lto-legacy-pass-manager | Use the new pass manager in LLVM | help |
--no-lto-pgo-warn-mismatch | turn off warnings about profile cfg mismatch | help |
--no-lto-unique-basic-block-section-names | Do not give unique names to every basic block section for LTO (default) | help |
--no-lto-whole-program-visibility | Asserts that the LTO link does not have whole program visibility | help |
--no-merge-exidx-entries | Disable merging .ARM.exidx entries | help |
--no-mmap-output-file | Do not mmap the output file for writing | help |
--no-nmagic | Page align sections (default) | help |
--no-omagic | Do not set the text data sections to be writable, page align sections (default) | help |
--no-optimize-bb-jumps | Do not remove any direct jumps at the end to the next basic block (default) | help |
--no-pcrel-optimize | (PowerPC64) Disable PC-relative optimizations | help |
--no-pie | Do not create a position independent executable (default) | help |
--no-power10-stubs | Alias for --power10-stubs=no | help |
--no-print-gc-sections | Do not list removed unused sections (default) | help |
--no-relax | Disable target-specific relaxations | help |
--no-rosegment | Do not put read-only non-executable sections in their own segment | help |
--no-toc-optimize | (PowerPC64) Disable TOC related optimizations | help |
--no-undefined-version | Report version scripts that refer undefined symbols | help |
--no-undefined | Report unresolved symbols even if the linker is creating a shared library | help |
--no-use-android-relr-tags | Use SHT_RELR / DT_RELR* tags (default) | help |
--no-warn-backrefs | Do not warn about backward symbol references to extract archive members (default) | help |
--no-warn-common | Do not warn about duplicate common symbols (default) | help |
--no-warn-symbol-ordering | Do not warn about problems with the symbol ordering file | help |
--no-whole-archive | Do not force load of all members in a static library (default) | help |
--noinhibit-exec | Retain the executable output file whenever it is still usable | help |
--non_shared | Alias for --Bstatic | help |
--nostdlib | Only search directories specified on the command line | help |
-N | Alias for --omagic | help |
-n | Alias for --nmagic | help |
--oformat elf | Specify the binary format for the output object file | help |
--omagic | Set the text and data sections to be readable and writable, do not page align sections, link against static libraries | help |
--opt-remarks-filename value | YAML output file for optimization remarks | help |
--opt-remarks-format value | The format used for serializing remarks (default: YAML) | help |
--opt-remarks-hotness-threshold value | Minimum profile count required for an optimization remark to be output. | help |
--opt-remarks-passes value | Regex for the passes that need to be serialized to the output file | help |
--opt-remarks-with-hotness | Include hotness information in the optimization remarks file | help |
--optimize-bb-jumps | Remove direct jumps at the end to the next basic block | help |
--orphan-handling value | Control how orphan sections are handled when linker script used | help |
--output value | Alias for -o | help |
-O value | Optimize output file size | help |
-o path | Path to file to write output | help |
--pack-dyn-relocs none | Pack dynamic relocations in the given format | help |
--pcrel-optimize | (PowerPC64) Enable PC-relative optimizations (default) | help |
--pic-executable | Alias for --pie | help |
--pic-veneer | Always generate position independent thunks (veneers) | help |
--pie | Create a position independent executable | help |
--plugin-opt -<value | Specify an LLVM option for compatibility with LLVMgold.so | help |
--plugin value | Ignored for compatibility with GNU linkers | help |
--pop-state | Restore the states saved by --push-state | help |
--power10-stubs mode | Whether to use Power10 instructions in call stubs for R_PPC64_REL24_NOTOC and TOC/NOTOC interworking (yes (default): use; | help |
--print-archive-stats value | Write archive usage statistics to the specified file. | help |
--print-gc-sections | List removed unused sections | help |
--print-icf-sections | List identical folded sections | help |
--print-map | Print a link map to the standard output | help |
--print-symbol-order value | Print a symbol order specified by --call-graph-ordering-file into the specified file | help |
--push-state | Save the current state of --as-needed, -static and --whole-archive | help |
-q | Alias for --emit-relocs | help |
--relax | Enable target-specific relaxations if supported (default) | help |
--relocatable | Create relocatable object file | help |
--reproduce value | Write tar file containing inputs and command to reproduce link | help |
--retain-symbols-file file | Retain only the symbols listed in the file | help |
--rosegment | Put read-only non-executable sections in their own segment (default) | help |
--rpath value | Add a DT_RUNPATH to the output | help |
--rsp-quoting posix | Quoting style for response files | help |
-R value | Alias for --rpath | help |
-r | Alias for --relocatable | help |
--save-temps | Save intermediate LTO compilation results | help |
--script value | Read linker script | help |
--section-start address | Set address of section | help |
--shared | Build a shared object | help |
--shuffle-sections section-glob>=<seed | Shuffle matched sections using the given seed before mapping them to the output sections. | help |
--soname value | Set DT_SONAME | help |
--sort-section value | Specifies sections sorting rule when linkerscript is used | help |
--split-stack-adjust-size value | Specify adjustment to stack size when a split-stack function calls a non-split-stack function | help |
--start-group | Ignored for compatibility with GNU unless you pass --warn-backrefs | help |
--start-lib | Start a grouping of objects that should be treated as if they were together in an archive | help |
--static | Alias for --Bstatic | help |
--strip-all | Strip all symbols. | help |
--strip-debug | Strip debugging information | help |
--symbol-ordering-file value | Layout sections to place symbols in the order specified by symbol ordering file | help |
--sysroot value | Set the system root | help |
-S | Alias for --strip-debug | help |
-s | Alias for --strip-all | help |
--target1-abs | Interpret R_ARM_TARGET1 as R_ARM_ABS32 (default) | help |
--target1-rel | Interpret R_ARM_TARGET1 as R_ARM_REL32 | help |
--target2 type | Interpret R_ARM_TARGET2 as <type>, where <type> is one of rel, abs, or got-rel | help |
--Tbss value | Same as --section-start with .bss as the sectionname | help |
--Tdata value | Same as --section-start with .data as the sectionname | help |
--thinlto-cache-dir value | Path to ThinLTO cached object file directory | help |
--thinlto-cache-policy value | Pruning policy for the ThinLTO cache | help |
--thinlto-jobs value | Number of ThinLTO jobs. | help |
--thinlto-single-module value | Specific a single module to compile in ThinLTO mode, for debugging only | help |
--threads value | Number of threads. | help |
--time-trace-file value | Specify time trace output file | help |
--time-trace-granularity value | Minimum time granularity (in microseconds) traced by time profiler | help |
--time-trace | Record time trace | help |
--toc-optimize | (PowerPC64) Enable TOC related optimizations (default) | help |
--trace-symbol value | Trace references to symbols | help |
--trace | Print the names of the input files | help |
--Ttext value | Same as --section-start with .text as the sectionname | help |
-T value | Alias for --script | help |
-t | Alias for --trace | help |
--undefined-glob pattern | Force undefined symbol during linking | help |
--undefined-version | Allow unused version in version script (default) | help |
--undefined symbol | Force undefined symbol during linking | help |
--unique | Creates a separate output section for every orphan input section | help |
--unresolved-symbols value | Determine how to handle unresolved symbols | help |
-u value | Alias for --undefined | help |
--verbose | Verbose mode | help |
--version-script value | Read a version script | help |
--version | Display the version number and exit | help |
--vs-diagnostics | Format diagnostics for Visual Studio compatibility | help |
-V | Alias for --version | help |
-v | Display the version number | help |
--warn-backrefs-exclude glob | Glob describing an archive (or an object file within --start-lib) which should be ignored for --warn-backrefs. | help |
--warn-backrefs | Warn about backward symbol references to extract archive members | help |
--warn-common | Warn about duplicate common symbols | help |
--warn-ifunc-textrel | Warn about using ifunc symbols with text relocations | help |
--warn-symbol-ordering | Warn about problems with the symbol ordering file (default) | help |
--warn-unresolved-symbols | Report unresolved symbols as warnings | help |
--whole-archive | Force load of all members in a static library | help |
--why-extract value | Print to a file about why archive members are extracted | help |
--wrap symbol | Redirect symbol references to __wrap_symbol and __real_symbol references to symbol | help |
-X | Alias for --discard-locals | help |
-x | Alias for --discard-all | help |
-y value | Alias for --trace-symbol | help |
-z option | Linker option extensions | help |