OVERVIEW: LLVM Linker
USAGE: /usr/bin/wasm-ld [options] file...
OPTIONS:
--allow-undefined-file=<value>
Allow symbols listed in <file> to be undefined in linked binary
--allow-undefined Allow undefined symbols in linked binary. This options is equivalent to --import-undefined and --unresolved-symbols=ignore-all
--Bsymbolic Bind defined symbols locally
--check-features Check feature compatibility of linked objects (default)
--color-diagnostics=[auto,always,never]
Use colors in diagnostics (default: auto)
--color-diagnostics Alias for --color-diagnostics=always
--compress-relocations Compress the relocation targets in the code section.
--demangle Demangle symbol names
--emit-relocs Generate relocations in output
--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
--experimental-pic Enable Experimental PIC
--export-all Export all symbols (normally combined with --no-gc-sections)
--export-dynamic Put symbols in the dynamic symbol table
--export-if-defined=<value>
Force a symbol to be exported, if it is defined in the input
--export-table Export function table to the environment
--export=<value> Force a symbol to be exported
-E Alias for --export-dynamic
--fatal-warnings Treat warnings as errors
--features=<value> Comma-separated used features, inferred from input objects by default.
--gc-sections Enable garbage collection of unused sections
--global-base=<value> Where to start to place global data
--growable-table Remove maximum size from function table, allowing table to grow
--help Print option help
--import-memory Import memory from the environment
--import-table Import function table from the environment
--import-undefined Turn undefined symbols into imports where possible
--initial-memory=<value>
Initial size of the linear memory
--lto-debug-pass-manager
Debug new pass manager
--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
--max-memory=<value> Maximum size of the linear memory
--merge-data-segments Enable merging data segments
--mllvm=<value> Additional arguments to forward to LLVM's option processing
-M Alias for --print-map
-m <value> Set target emulation
--no-check-features Ignore feature compatibility of linked objects
--no-color-diagnostics Alias for --color-diagnostics=never
--no-demangle Do not demangle symbol names
--no-entry Do not output any entry point
--no-export-dynamic Do not put symbols in the dynamic symbol table (default)
--no-gc-sections Disable garbage collection of unused sections
--no-lto-legacy-pass-manager
Use new pass manager
--no-merge-data-segments
Disable merging data segments
--no-pie Do not create a position independent executable (default)
--no-print-gc-sections Do not list removed unused sections
--no-whole-archive Do not force load of all members in a static library (default)
-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
--rsp-quoting=[posix,windows]
Quoting style for response files
--save-temps Save intermediate LTO compilation results
--shared-memory Use shared linear memory
--shared Build a shared object
--stack-first Place stack at start of linear memory rather than after data
--strip-all Strip all symbols
--strip-debug Strip debugging information
-S Alias for --strip-debug
-s Alias for --strip-all
--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=
--threads=<value> Number of threads. '1' disables multi-threading. By default all available hardware threads are used
--trace-symbol=<value> Trace references to symbols
--trace Print the names of the input files
-t Alias for --trace
--undefined=<value> Force undefined symbol during linking
--unresolved-symbols=<value>
Determine how to handle unresolved symbols
--verbose Verbose mode
--version Display the version number and exit
-v Display the version number
--warn-unresolved-symbols
Report unresolved symbols as warnings
--whole-archive Force load of all members in a static library
--wrap=<symbol>=<symbol>
Use wrapper functions for symbol
-y <value> Alias for --trace-symbol
-z <option> Linker option extensions
Options (78)
| Option | Description | Source |
|---|---|---|
--allow-undefined-file value | Allow symbols listed in <file> to be undefined in linked binary | help |
--allow-undefined | Allow undefined symbols in linked binary. | help |
--Bsymbolic | Bind defined symbols locally | help |
--check-features | Check feature compatibility of linked objects (default) | help |
--color-diagnostics auto | Use colors in diagnostics (default: auto) | help |
--demangle | Demangle symbol names | help |
--emit-relocs | Generate relocations in output | help |
--entry entry | Name of entry point symbol | 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 |
--experimental-pic | Enable Experimental PIC | help |
--export-all | Export all symbols (normally combined with --no-gc-sections) | help |
--export-dynamic | Put symbols in the dynamic symbol table | help |
--export-if-defined value | Force a symbol to be exported, if it is defined in the input | help |
--export-table | Export function table to the environment | help |
--export value | Force a symbol to be exported | help |
-E | Alias for --export-dynamic | help |
--fatal-warnings | Treat warnings as errors | help |
--features value | Comma-separated used features, inferred from input objects by default. | help |
--gc-sections | Enable garbage collection of unused sections | help |
--global-base value | Where to start to place global data | help |
--growable-table | Remove maximum size from function table, allowing table to grow | help |
--help | Print option help | help |
--import-memory | Import memory from the environment | help |
--import-table | Import function table from the environment | help |
--import-undefined | Turn undefined symbols into imports where possible | help |
--initial-memory value | Initial size of the linear memory | help |
--lto-debug-pass-manager | Debug new pass manager | help |
--lto-O opt-level | Optimization level for LTO | help |
--lto-partitions value | Number of LTO codegen partitions | help |
-L dir | Add a directory to the library search path | help |
-l libName | Root name of library to use | help |
--Map value | Print a link map to the specified file | help |
--max-memory value | Maximum size of the linear memory | help |
--merge-data-segments | Enable merging data segments | help |
--mllvm value | Additional arguments to forward to LLVM's option processing | help |
-M | Alias for --print-map | help |
-m value | Set target emulation | help |
--no-check-features | Ignore feature compatibility of linked objects | help |
--no-demangle | Do not demangle symbol names | help |
--no-entry | Do not output any entry point | help |
--no-export-dynamic | Do not put symbols in the dynamic symbol table (default) | help |
--no-gc-sections | Disable garbage collection of unused sections | help |
--no-lto-legacy-pass-manager | Use new pass manager | help |
--no-merge-data-segments | Disable merging data segments | help |
--no-pie | Do not create a position independent executable (default) | help |
--no-whole-archive | Do not force load of all members in a static library (default) | help |
-O value | Optimize output file size | help |
-o path | Path to file to write output | help |
--pie | Create a position independent executable | help |
--print-gc-sections | List removed unused sections | help |
--print-map | Print a link map to the standard output | help |
--relocatable | Create relocatable object file | help |
--reproduce value | Dump linker invocation and input files for debugging | help |
--rsp-quoting posix | Quoting style for response files | help |
--save-temps | Save intermediate LTO compilation results | help |
--shared-memory | Use shared linear memory | help |
--shared | Build a shared object | help |
--stack-first | Place stack at start of linear memory rather than after data | help |
--strip-all | Strip all symbols | help |
--strip-debug | Strip debugging information | help |
-S | Alias for --strip-debug | help |
-s | Alias for --strip-all | help |
--thinlto-cache-dir value | Path to ThinLTO cached object file directory | help |
--thinlto-cache-policy value | Pruning policy for the ThinLTO cache | help |
--threads value | Number of threads. | help |
--trace | Print the names of the input files | help |
-t | Alias for --trace | help |
--undefined value | Force undefined symbol during linking | help |
--unresolved-symbols value | Determine how to handle unresolved symbols | help |
--verbose | Verbose mode | help |
--version | Display the version number and exit | help |
-v | Display the version number | help |
--warn-unresolved-symbols | Report unresolved symbols as warnings | help |
--whole-archive | Force load of all members in a static library | help |
--wrap symbol>=<symbol | Use wrapper functions for symbol | help |
-y value | Alias for --trace-symbol | help |
-z option | Linker option extensions | help |