我的一些 Mac OS X 系统似乎有/usr/include/mach-o/loader.h,而其他系统则没有。我很困惑,因为这个文件记录在这里:
例如:
...Declared in /usr/include/mach-o/loader.h. See also mach_header_64.
有谁知道这个文件是否在任何较新版本的 Mac OS X 上被删除?或者我是否需要安装特殊的 SDK 才能获得它?
最佳答案
它存在于我的 Mac (OS X 10.7) 上,但我确实安装了 Xcode,并且它可能是其中的一部分。
编辑
请注意,当 Xcode 编译任何内容时,它不会使用 /usr/include
中的 header ,而是使用您选择的 SDK 中的 header ,您可以通过执行以下操作找出系统 header 的位置编译然后检查 -isysroot 命令行开关。所以我刚刚完成了编译,编译器调用包括:
-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7sdk
如果您打开该目录,您会发现它包含一个 usr/include/mach-o
子目录,其中包含您想要的文件。
关于xcode -/usr/include/mach-o/loader.h 从哪里来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10915115/