LLVM-INSTALL-NAME-TOOL(1)
π¦ LLVM-INSTALL-NAME-TOOL β the llvm-install-name-tool era π¦
okay bestie, welcome to llvm-install-name-tool(1), LLVM's very own tool for messing with install-names and rpaths. she's from the LLVM manual pages, she's gorgeous, and she's about to make your Mach-O binaries behave. π
β¨ SYNOPSIS β¨
llvm-install-name-tool [options] input
literally that's it. options + your input file. slay.
π DESCRIPTION π
so llvm-install-name-tool is a tool to manipulate dynamic shared library install names and rpaths listed in a Mach-O binary. that's her whole job. she's locked in. π
and here's the tea π«: for most scenarios, it works as a drop-in replacement for Apple's install_name_tool. like, you can just swap her in. no cap. iconic behavior tbh.
πΈ OPTIONS πΈ
okay so the rules first, because there are rules:
- At least one of the following options are required
- some options can be combined with other options
-add_rpath,-delete_rpath, and-rpathcan be combined in an invocation only if they do not share the same <rpath> value
got it? got it. now let's go option by option, i'm obsessed with each of them: π
-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. like hello we don't do duplicates?? π-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. so chill. no drama. it just gets ignored. π-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. she's not here, so there's nothing to delete, and she WILL tell you about it.-delete_all_rpathsβ Deletes all rpaths from the binary. all of them. every single one. goodbye rpaths π«Ά--help,-hβ Print a summary of command line options. classic. love her for that.-id <name>β Change shared library's identification name underLC_ID_DYLIBto <name> in the specified binary. If specified multiple times, only the last-idoption is selected (last one wins, main character energy π). Option is ignored if the specified Mach-O binary is not a dynamic shared library. she knows what she's doing, don't worry.-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. double β¨errorβ¨ conditions, so read them: old one must exist, new one must NOT already exist. no cap.--version,-Vβ Display the version of thellvm-install-name-toolexecutable. pop off, version string. π
β EXIT STATUS β
llvm-install-name-tool exits with a non-zero exit code if there is an error. Otherwise, it exits with code 0.
so: 0 = we ate π, non-zero = something went sideways π.
π BUGS π
To report bugs, please visit <https://github.com/llvm/llvm-project/labels/tools:llvm-objcopy/strip/>. tell them everything bestie, they wanna know. π
π SEE ALSO π
llvm-objcopy(1)<llvm-objcopy.html> β her sibling. go say hi. π
π Author π
Maintained by the LLVM Team (<https://llvm.org/>). slay.
π Copyright π
2003-2026, LLVM Project
and that's the whole page! π this was issue 15, dated 2026-09-09, from the LLVM girlies themselves β take care of her, she's iconic, and she exits 0 when she's happy. bye bestie!! π¦β¨
π¦ where this page comes from
- ubuntu stonking: llvm-18 1:18.1.8-20ubuntu11 Β· APACHE-2-LLVM-EXCEPTIONS
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms