一、一个Mach-O文件包含3个主要区域:Header、Load commands 、Data
二、Header
文件类型、目标架构类型等
三、Load commands
描述文件在虚拟内存中的逻辑结构、布局
四、Raw segment data
在Load commands 中定义的Segment的原始数据
可以在xnu源码中,查看到Mach-O格式的详细定义:https://opensource.apple.com/tarballs/xnu/
file:查看Mach-O特定部分和段的内容
file 文件路径
otool:查看Mach-O文件的处理
GUI工具
MachOView:https://github.com/gdbinit/MachOView
下载源代码后,xcode11.3 运行 会报错:
一、Base SDK ----修改---》macOS
二、Build Setting->C++ Standard Library->libc++