llvm-install-name-tool-17 - Man Page

LLVM tool for manipulating install-names and rpaths

Synopsis

llvm-install-name-tool [options] input

Description

llvm-install-name-tool is a tool to manipulate dynamic shared library install names and rpaths listed in a Mach-O binary.

For most scenarios, it works as a drop-in replacement for Apple's install_name_tool.

Options

At least one of the following options are required, and some options can be combined with other options. Options -add_rpath, -delete_rpath, and -rpath can be combined in an invocation only if they do not share the same <rpath> value.

-add_rpath <rpath>

Add an rpath named <rpath> to the specified binary. Can be specified multiple times to add multiple rpaths. Throws an error if <rpath> is already listed in the binary.

-change <old_install_name> <new_install_name>

Change an install name <old_install_name> to <new_install_name> in the specified binary. Can be specified multiple times to change multiple dependent shared library install names. Option is ignored if <old_install_name> is not listed in the specified binary.

-delete_rpath <rpath>

Delete an rpath named <rpath> from the specified binary. Can be specified multiple times to delete multiple rpaths. Throws an error if <rpath> is not listed in the binary.

-delete_all_rpaths

Deletes all rpaths from the binary.

--help, ā€‰-h

Print a summary of command line options.

-id <name>

Change shared library's identification name under LC_ID_DYLIB to <name> in the specified binary. If specified multiple times, only the last -id option is selected. Option is ignored if the specified Mach-O binary is not a dynamic shared library.

-rpath <old_rpath> <new_rpath>

Change an rpath named <old_rpath> to <new_rpath> in the specified binary. Can be specified multiple times to change multiple rpaths. Throws an error if <old_rpath> is not listed in the binary or <new_rpath> is already listed in the binary.

--version, ā€‰-V

Display the version of the llvm-install-name-tool executable.

Exit Status

llvm-install-name-tool exits with a non-zero exit code if there is an error. Otherwise, it exits with code 0.

Bugs

To report bugs, please visit <https://github.com/llvm/llvm-project/labels/tools:llvm-objcopy/strip/>.

See Also

llvm-objcopy(1)

Author

Maintained by the LLVM Team (https://llvm.org/).

Info

2024-07-18 17 LLVM