LLVM-INSTALL-NAME-TOOL(1)
π LLVM-INSTALL-NAME-TOOL β the gen z breakdown
okay so bestie, this is llvm-install-name-tool(1), part of the LLVM fam β¨ β and it's literally the tool you want when you need to mess with the install names and rpaths chillin' inside a Mach-O binary. π¦
πΈ SYNOPSIS πΈ
llvm-install-name-tool [options] input
π DESCRIPTION π
So llvm-install-name-tool is the tool that manipulates dynamic shared library install names and the rpaths listed inside a Mach-O binary. It's giving surgical precision, no cap π
And for most scenarios? It works as a drop-in replacement for Apple's install_name_tool. Iconic behavior honestly, we ate. π
β¨ OPTIONS β¨
Okay so vibe check first: at least one of the options below is required, and some of them can be combined with other options. But lowkey there's a rule β -add_rpath, -delete_rpath, and -rpath can be combined in one invocation only if they don't share the same <rpath> value. fr fr, that's the boundary. π«Ά
-add_rpath<rpath> β Adds an rpath named <rpath> to the binary you specified. You can throw this flag multiple times to add multiple rpaths. It throws an error if <rpath> is already listed in the binary (no duplicates allowed bestie π).-change<old_install_name> <new_install_name> β Changes an install name from <old_install_name> to <new_install_name> in the specified binary. Can be specified multiple times to change multiple dependent shared library install names. This option is ignored if <old_install_name> isn't listed in the binary β like, it just shrugs and moves on π.-delete_rpath<rpath> β Deletes an rpath named <rpath> from the specified binary. Can be specified multiple times to delete multiple rpaths. Throws an error if <rpath> isn't listed in the binary π-delete_all_rpathsβ Deletes all rpaths from the binary. Clean slate energy, periodt π--help,-hβ Prints a summary of the command line options. Your lil cheat sheet π-id<name> β Changes the shared library's identification name underLC_ID_DYLIBto <name> in the specified binary. If you specify it multiple times, only the last-idoption is selected (last one wins, main character energy π). This option is ignored if the specified Mach-O binary isn't a dynamic shared library.-o<file>,--output<file> β Writes the modified binary to <file> instead of updating the input file in place. Non-destructive queen behavior π-rpath<old_rpath> <new_rpath> β Changes 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> isn't listed in the binary or <new_rpath> is already listed in the binary β¨--version,-Vβ Displays the version of thellvm-install-name-toolexecutable. Slay, know your build π¦
π EXIT STATUS π
llvm-install-name-tool exits with a non-zero exit code if there's an error. Otherwise? It exits with code 0. Simple as that, no drama π
π BUGS π
Wanna report a bug? Please visit <https://github.com/llvm/llvm-project/labels/tools:llvm-objcopy/strip/>
omg please actually report them, the LLVM team wants to know π
β SEE ALSO β
llvm-objcopy(1)<llvm-objcopy.html>
Author β Maintained by the LLVM Team (<https://llvm.org/>) π«Ά
Copyright β 2003-2026, LLVM Project
okay that's the whole page bestie, ily, go forth and manipulate those install names π β this was LLVM-INSTALL-NAME-TOOL(1) from LLVM, version 23, dated 2026-10-20. mwah π§ββοΈβ¨
π¦ where this page comes from
- arch rolling: llvm 23.1.4-1 Β· Apache-2.0 WITH LLVM-exception
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms