LLVM-INSTALL-NAME-TOOL(1)
π NAME
okay so bestie, welcome to llvm-install-name-tool β the LLVM tool for manipulating install-names and rpaths. that's it, that's the whole vibe β¨
π SYNOPSIS
llvm-install-name-tool [options] input
one binary, a pile of options, let's GO π¦
πΈ DESCRIPTION
llvm-install-name-tool is literally the tool you reach for when you wanna manipulate dynamic shared library install names and the rpaths listed inside a Mach-O binary. no cap.
and for most scenarios? it works as a drop-in replacement for Apple's install_name_tool. so you can just slide in and nobody will even notice π
β¨ OPTIONS β¨
okay first things first: at least one of the following options is required. yes, minimum one. and some options can be combined with other options β but hear me out: -add_rpath, -delete_rpath, and -rpath can be combined in a single invocation only if they do not share the same <rpath> value. that's the rule, respect it π
-add_rpath <rpath>β adds an rpath named<rpath>to the specified binary. you can specify it multiple times to stack up multiple rpaths, iconic. throws an error if<rpath>is already listed in the binary β no duplicates allowed, periodt π-change <old_install_name> <new_install_name>β changes an install name<old_install_name>to<new_install_name>in the specified binary. specify it multiple times to change multiple dependent shared library install names, go off. option is ignored if<old_install_name>is not listed in the specified binary β it's giving "no notes, we move on" π«Ά-delete_rpath <rpath>β deletes an rpath named<rpath>from the specified binary. multiple times = multiple deletions, slay. throws an error if<rpath>is not listed in the binary π-delete_all_rpathsβ deletes all rpaths from the binary. every single one. main character energy, zero survivors π--help,-hβ print a summary of command line options. the glow-up 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, always). option is ignored if the specified Mach-O binary is not a dynamic shared library β know your audience π-rpath <old_rpath> <new_rpath>β changes an rpath named<old_rpath>to<new_rpath>in the specified binary. multiple times = multiple rpath glow-ups. throws an error if<old_rpath>is not listed in the binary or<new_rpath>is already listed in the binary β both ways, it's a no π€--version,-Vβ display the version of thellvm-install-name-toolexecutable. gotta know what you're working with β
π EXIT STATUS
llvm-install-name-tool exits with a non-zero exit code if there is an error. otherwise? it exits with code 0. clean, flawless, no drama π
π BUGS
found a bug? to report bugs, please visit https://github.com/llvm/llvm-project/labels/tools:llvm-objcopy/strip/ β the LLVM team wants to hear from you fr fr π
π SEE ALSO
llvm-objcopy(1)<llvm-objcopy.html> β its bestie, its partner in crime π¦
π§ Author
Maintained by the LLVM Team (https://llvm.org/). absolute icons, honestly πΈ
π Copyright
2003-2026, LLVM Project. all the rights, all the years π
okay that's the whole page bestie, you're officially caught up π«Ά LLVM, version 21, dated 2026-05-15 β mwah, go manipulate some install names π β¨
π¦ where this page comes from
- fedora 44: llvm21 21.1.8-5.fc44 Β· Apache-2.0 WITH LLVM-exception OR NCSA
- fedora 44: llvm21 21.1.8-5.fc44 Β· Apache-2.0 WITH LLVM-exception OR NCSA
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms