LLVM-OTOOL(1)
π LLVM-OTOOL(1) β the Mach-O dumping tool, bestie edition
okay so welcome to llvm-otool(1) from the LLVM fam β this is the manual page, and I'm gonna walk you through it like we're texting at 2am π¦
β¨ NAME β¨
llvm-otool β Mach-O dumping tool. that's it, that's the whole vibe. it dumps Mach-O files. π
πΈ SYNOPSIS πΈ
llvm-otool [option...] [file...]
options first, files after, everyone gets along. simple. π
π DESCRIPTION π
so llvm-otool is a tool for dumping Mach-O files. literally its whole personality, and honestly? it ate.
it attempts to be command-line-compatible and output-compatible with macOS's otool. so like, if you already know otool, you already know this. no cap. π«Ά
π₯ OPTIONS π₯
okay this is the long section, stay with me babe, every single one is here:
-arch <value>β picks which slice of a universal Mach-O file you want. universal file = many slices, you pick one. β¨-chained_fixupsβ prints chained fixup information.-Cβ prints linker optimization hints. cute little hints.-dyld_infoβ prints bind and rebase information.-Dβ prints the shared library id.-dβ prints the data section.-fβ prints the universal headers.-Gβ prints the data-in-code table.--help-hiddenβ prints help for the hidden flags π the secret menu.--helpβ prints help. the normal menu.-hβ prints the mach header.-Iβ prints the indirect symbol table.-jβ prints opcode bytes. raw bytes, no thoughts, head empty π-Lβ prints the used shared libraries.-lβ prints load commands. that's a lowercase L btw, not a one. lowercase L is the busy one here. π-mcpu=<value>β selects the cpu for disassembly.-oβ prints the Objective-C segment.-Pβ prints the__TEXT,__info_plistsection as strings.-p <function name>β starts disassembly at<function name>. so you can jump straight to your fave function, main character energy fr fr.-rβ prints relocation entries.-s <segname> <sectname>β prints the contents of a section. two arguments, not one β don't get caught lacking on that.-tβ prints the text section.--versionβ prints the version.-Vβ symbolizes disassembled operands, and yes it implies-v. you get verbose whether you asked or not, bestie. π-vβ verbose output, and also disassembles when printing text sections.-Xβ omits leading addresses or headers. the β¨minimalistβ¨ option.-xβ prints all text sections. all of them. every last one.@<FILE>β reads command-line options and commands from the response file<FILE>. like a playlist but for flags π§
β EXIT STATUS β
llvm-otool exits with a non-zero exit code if there's an error. otherwise it exits with code 0. so like, zero = she's fine, not-zero = something's up. vibe check passed or failed, no in-between. π
π BUGS π
found a bug? don't suffer in silence, bestie β go report it here:
https://github.com/llvm/llvm-project/labels/tools:llvm-objdump/
(that link got a lil line-broken in the original, but it's one URL, i promise π«Ά)
π SEE ALSO π
go read those too, they're literally cousins of this one. iykyk. π§
π AUTHOR π
maintained by the LLVM Team (https://llvm.org/). iconic behavior honestly.
π COPYRIGHT π
2003-2025, LLVM Project
and that's the whole page, bestie β every flag, every path, every section, nothing skipped. you're basically an otool expert now. π
kisses, and remember: this was page 19 of the LLVM manual set, dated 2025-01-17, from the LLVM source β see you in the next manpage, mwah ππΈ
π¦ where this page comes from
- opensuse-leap 16.0: llvm19 19.1.7-160000.2.2 Β· Apache-2.0 WITH LLVM-exception AND NCSA
- opensuse-leap 16.0: llvm19 19.1.7-160000.2.2 Β· Apache-2.0 WITH LLVM-exception AND NCSA
- opensuse-leap 16.0: llvm19 19.1.7-160000.2.2 Β· Apache-2.0 WITH LLVM-exception AND NCSA
- opensuse-leap 16.0: llvm19 19.1.7-160000.2.2 Β· Apache-2.0 WITH LLVM-exception AND NCSA
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms