1*82d56013Sjoergllvm-install-name-tool - LLVM tool for manipulating install-names and rpaths 2*82d56013Sjoerg============================================================================ 3*82d56013Sjoerg 4*82d56013Sjoerg.. program:: llvm-install-name-tool 5*82d56013Sjoerg 6*82d56013SjoergSYNOPSIS 7*82d56013Sjoerg-------- 8*82d56013Sjoerg 9*82d56013Sjoerg:program:`llvm-install-name-tool` [*options*] *input* 10*82d56013Sjoerg 11*82d56013SjoergDESCRIPTION 12*82d56013Sjoerg----------- 13*82d56013Sjoerg 14*82d56013Sjoerg:program:`llvm-install-name-tool` is a tool to manipulate dynamic shared library 15*82d56013Sjoerginstall names and rpaths listed in a Mach-O binary. 16*82d56013Sjoerg 17*82d56013SjoergFor most scenarios, it works as a drop-in replacement for Apple's 18*82d56013Sjoerg:program:`install_name_tool`. 19*82d56013Sjoerg 20*82d56013SjoergOPTIONS 21*82d56013Sjoerg-------- 22*82d56013SjoergAt least one of the following options are required, and some options can be 23*82d56013Sjoergcombined with other options. Options :option:`-add_rpath`, :option:`-delete_rpath`, 24*82d56013Sjoergand :option:`-rpath` can be combined in an invocation only if they do not share 25*82d56013Sjoergthe same `<rpath>` value. 26*82d56013Sjoerg 27*82d56013Sjoerg.. option:: -add_rpath <rpath> 28*82d56013Sjoerg 29*82d56013Sjoerg Add an rpath named ``<rpath>`` to the specified binary. Can be specified multiple 30*82d56013Sjoerg times to add multiple rpaths. Throws an error if ``<rpath>`` is already listed in 31*82d56013Sjoerg the binary. 32*82d56013Sjoerg 33*82d56013Sjoerg.. option:: -change <old_install_name> <new_install_name> 34*82d56013Sjoerg 35*82d56013Sjoerg Change an install name ``<old_install_name>`` to ``<new_install_name>`` in the 36*82d56013Sjoerg specified binary. Can be specified multiple times to change multiple dependent shared 37*82d56013Sjoerg library install names. Option is ignored if ``<old_install_name>`` is not listed 38*82d56013Sjoerg in the specified binary. 39*82d56013Sjoerg 40*82d56013Sjoerg.. option:: -delete_rpath <rpath> 41*82d56013Sjoerg 42*82d56013Sjoerg Delete an rpath named ``<rpath>`` from the specified binary. Can be specified multiple 43*82d56013Sjoerg times to delete multiple rpaths. Throws an error if ``<rpath>`` is not listed in 44*82d56013Sjoerg the binary. 45*82d56013Sjoerg 46*82d56013Sjoerg.. option:: -delete_all_rpaths 47*82d56013Sjoerg 48*82d56013Sjoerg Deletes all rpaths from the binary. 49*82d56013Sjoerg 50*82d56013Sjoerg.. option:: --help, -h 51*82d56013Sjoerg 52*82d56013Sjoerg Print a summary of command line options. 53*82d56013Sjoerg 54*82d56013Sjoerg.. option:: -id <name> 55*82d56013Sjoerg 56*82d56013Sjoerg Change shared library's identification name under LC_ID_DYLIB to ``<name>`` in the 57*82d56013Sjoerg specified binary. If specified multiple times, only the last :option:`-id` option is 58*82d56013Sjoerg selected. Option is ignored if the specified Mach-O binary is not a dynamic shared library. 59*82d56013Sjoerg 60*82d56013Sjoerg.. option:: -rpath <old_rpath> <new_rpath> 61*82d56013Sjoerg 62*82d56013Sjoerg Change an rpath named ``<old_rpath>`` to ``<new_rpath>`` in the specified binary. Can be specified 63*82d56013Sjoerg multiple times to change multiple rpaths. Throws an error if ``<old_rpath>`` is not listed 64*82d56013Sjoerg in the binary or ``<new_rpath>`` is already listed in the binary. 65*82d56013Sjoerg 66*82d56013Sjoerg.. option:: --version, -V 67*82d56013Sjoerg 68*82d56013Sjoerg Display the version of the :program:`llvm-install-name-tool` executable. 69*82d56013Sjoerg 70*82d56013SjoergEXIT STATUS 71*82d56013Sjoerg----------- 72*82d56013Sjoerg 73*82d56013Sjoerg:program:`llvm-install-name-tool` exits with a non-zero exit code if there is an error. 74*82d56013SjoergOtherwise, it exits with code 0. 75*82d56013Sjoerg 76*82d56013SjoergBUGS 77*82d56013Sjoerg---- 78*82d56013Sjoerg 79*82d56013SjoergTo report bugs, please visit <https://bugs.llvm.org/>. 80*82d56013Sjoerg 81*82d56013SjoergSEE ALSO 82*82d56013Sjoerg-------- 83*82d56013Sjoerg 84*82d56013Sjoerg:manpage:`llvm-objcopy(1)` 85