Mach-O
Sign in to saveAlso known as .o, .dylib, .bundle, Mach object, MachO
Mach-O (Mach object) is a file format for executables, object code, shared libraries, dynamically loaded code, and core dumps. It was developed to replace the a.out format.
~40 min read
Encyclopedic overview
24 sectionsContents
- File layout
- Header
- Multi-architecture binaries
- Load commands
- Segment load command
- Segment number and section numbers
- Link libraries
- Link library ordinal numbers
- __LINKEDIT symbol table
- Symbol table organization
- __LINKEDIT Symbol table information
- Indirect table
- __LINKEDIT Compressed table
- Binding information
- Application main entry point
- Application UUID number
- Minimum OS version
- Other implementations
- Mach-O parsers and editors
- Mach-O runners
- See also
- References
- Bibliography
- External links
Mach-O (Mach object) is a file format for executables, object code, shared libraries, dynamically loaded code, and core dumps. It was developed to replace the a.out format.
Mach-O is used by some systems based on the Mach kernel. NeXTSTEP, macOS, and iOS are examples of systems that use this format for native executables, libraries and object code.
Excerpted from Wikipedia’s “Mach-O” article, available under the CC BY-SA 4.0 licence.