Xcode /usr/include/mach-o/loader.h来自哪里?
似乎我的一些MacOSX系统有/usr/include/mach-o/loader.h,而其他的没有。我很困惑,因为这个文件记录在这里: 例如:Xcode /usr/include/mach-o/loader.h来自哪里?,xcode,macos,cocoa,mach-o,Xcode,Macos,Cocoa,Mach O,似乎我的一些MacOSX系统有/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,它可能是其中的一部分 编辑 请注
...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
中的头,而是使用您选择的SDK中的头,您可以通过执行编译并检查-isysroot命令行开关来找出系统头的位置。我刚刚完成了编译,编译器调用包括:
-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7sdk
如果打开该目录,您会发现它包含一个子目录,其中包含您想要的文件。loader.h是MAC上的一个隐藏文件,因此如果您没有可查看的隐藏文件,请首先打开终端,执行以下命令:
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder
然后此命令:
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder
之后,按照finder中的路径:/usr/include/mach-o/loader.h
如果你确实有隐藏文件,我只能说我有一台OS X 10.7、10.6和10.5笔记本电脑,他们有,并且安装了Xcode。谢谢你的反馈。在有问题的机器上,我确实安装了XCode,但由于某种原因,../mach-o/目录不存在。XCode的版本是什么?而且,如果它不是命令行工具/Unix开发工具自动附带的版本之一,您是否安装了该软件包?在某些情况下,XCode可能会使用此文件的SDK版本,但XCode肯定会直接读取此文件的/usr/include文件夹(根据我的include语句)。当我把文件放在那里时,构建开始工作。尽管您对该文件夹的看法是正确的,但该文件夹已存在并包含所需的包含文件。