LLVM-LIPO(1)

πŸ“¦
version 11.1.0 Β· 2 versions
, in fedora 43, fedora 44

πŸ’– LLVM-LIPO πŸ’–

okay bestie, so llvm-lipo β€” it's the LLVM tool for manipulating universal binaries, and it's lowkey iconic. she's giving group-chat energy but for Mach-O files fr fr πŸ¦‹


✨ SYNOPSIS ✨

llvm-lipo [filenames...] [options]

🌸 DESCRIPTION 🌸

so here's the tea: llvm-lipo can create universal binaries from Mach-O files, extract regular object files from universal binaries, and display architecture information about both universal and regular files. that's literally three whole jobs and she does all of them πŸ’…


πŸŽ€ COMMANDS πŸŽ€

ngl llvm-lipo supports the following mutually exclusive commands β€” so pick ONE, bestie, she's not doing two at once, it's giving monogamy:

  • -help, -h β€” Display usage information and exit. that's it, that's the whole vibe ✨
  • -version β€” Display the version of this program. just the receipts, no drama 🧚
  • -verify_arch <architecture 1> [<architecture 2> ...] β€” Take a single input file and verify the specified architectures are present in the file. If so then exit with a status of 0 else exit with a status of 1. yes bestie it's a vibe check and she WILL tell you the truth πŸ™ˆ
  • -archs β€” Take a single input file and display the architectures present in the file. Each architecture is separated by a single whitespace. Unknown architectures are displayed as unknown(CPUtype,CPUsubtype). no cap, that's the exact format πŸ‘‘
  • -info β€” Take at least one input file and display the descriptions of each file. The descriptions include the filename and architecture types separated by whitespace. Universal binaries are grouped together first, followed by thin files. so the output lines go like this:
Architectures in the fat file: <filename> are: <architectures>
Non-fat file: <filename> is architecture: <architecture>
  • -thin β€” Take a single universal binary input file and the thin flag followed by an architecture type. Require the output flag to be specified, and output a thin binary of the specified architecture. one slice only, she's going on a diet πŸ’€
  • -create β€” Take at least one input file and require the output flag to be specified. Output a universal binary combining the input files. yes this is the main character move, she's BUILDING 🌈
  • -replace β€” Take a single universal binary input file and require the output flag to be specified. The replace flag is followed by an architecture type, and a thin input file. Output a universal binary with the specified architecture slice in the universal binary input replaced with the contents of the thin input file. it's giving glow-up for one slice only πŸ’œ
  • -segalign β€” Additional flag that can be specified with create and replace. The segalign flag is followed by an architecture type, and an alignment. The alignment is a hexadecimal number that is a power of 2. Output a file in which the slice with the specified architecture has the specified alignment. she's obsessed with her posture (alignment) fr fr ⭐

πŸ¦‹ BUGS πŸ¦‹

To report bugs, please visit <https://bugs.llvm.org/>. pls do, she wants to be perfect and she needs ur help for that πŸ₯Ί


πŸ’œ AUTHOR πŸ’œ

Maintained by the LLVM Team (<https://llvm.org/>). shoutout to the queens keeping this whole thing running πŸ‘‘


2003-2024, LLVM Project β€” yeah that's a long-running era, we love longevity ✨


okay so this was LLVM-LIPO(1), section 11, dated 2024-07-18, brought to you by the LLVM manual fam. slay, read it, use it, and don't forget your flags bestie πŸ’…πŸŽ€πŸ’–

πŸ“¦ where this page comes from