1 llvm-install-name-tool - LLVM tool for manipulating install-names and rpaths
2 ============================================================================
4 .. program:: llvm-install-name-tool
9 :program:`llvm-install-name-tool` [*options*] *input*
14 :program:`llvm-install-name-tool` is a tool to manipulate dynamic shared library
15 install names and rpaths listed in a Mach-O binary.
17 For most scenarios, it works as a drop-in replacement for Apple's
18 :program:`install_name_tool`.
22 At least one of the following options are required, and some options can be
23 combined with other options. Options :option:`-add_rpath`, :option:`-delete_rpath`,
24 and :option:`-rpath` can be combined in an invocation only if they do not share
25 the same `<rpath>` value.
27 .. option:: -add_rpath <rpath>
29 Add an rpath named ``<rpath>`` to the specified binary. Can be specified multiple
30 times to add multiple rpaths. Throws an error if ``<rpath>`` is already listed in
33 .. option:: -change <old_install_name> <new_install_name>
35 Change an install name ``<old_install_name>`` to ``<new_install_name>`` in the
36 specified binary. Can be specified multiple times to change multiple dependent shared
37 library install names. Option is ignored if ``<old_install_name>`` is not listed
38 in the specified binary.
40 .. option:: -delete_rpath <rpath>
42 Delete an rpath named ``<rpath>`` from the specified binary. Can be specified multiple
43 times to delete multiple rpaths. Throws an error if ``<rpath>`` is not listed in
46 .. option:: -delete_all_rpaths
48 Deletes all rpaths from the binary.
50 .. option:: --help, -h
52 Print a summary of command line options.
54 .. option:: -id <name>
56 Change shared library's identification name under LC_ID_DYLIB to ``<name>`` in the
57 specified binary. If specified multiple times, only the last :option:`-id` option is
58 selected. Option is ignored if the specified Mach-O binary is not a dynamic shared library.
60 .. option:: -rpath <old_rpath> <new_rpath>
62 Change an rpath named ``<old_rpath>`` to ``<new_rpath>`` in the specified binary. Can be specified
63 multiple times to change multiple rpaths. Throws an error if ``<old_rpath>`` is not listed
64 in the binary or ``<new_rpath>`` is already listed in the binary.
66 .. option:: --version, -V
68 Display the version of the :program:`llvm-install-name-tool` executable.
73 :program:`llvm-install-name-tool` exits with a non-zero exit code if there is an error.
74 Otherwise, it exits with code 0.
79 To report bugs, please visit <https://github.com/llvm/llvm-project/labels/tools:llvm-objcopy/strip/>.
84 :manpage:`llvm-objcopy(1)`