OS X El Capitan中缺少/ usr / include


19

我正在尝试构建一个依赖PJSIPlib 的应用程序,该应用程序中应包含一些标头/usr/include。但是没有/usr/include文件夹,即使我的帐户具有管理员权限也无法创建一个文件夹。

如何include激活,创建/还原文件夹?

Answers:


15

更新(2016年2月12日):

我终于安装了El Capitan,现在可以确认OndřejČertík的回答是正确的。我强烈建议安装命令行开发人员工具,而不是禁用SIP。

正如Ondřej指出的那样,仅安装Xcode不会安装所有命令行开发人员工具。您必须xcode-select --install在终端中执行。


原始帖子(2015年12月5日):

El Capitan默认禁用对/ System,/ bin,/ sbin,/ usr,/ etc,/ tmp和/ var的写权限,即使对于root用户也是如此。这是由于新的安全完整性保护功能。

禁用SIP,请引导至恢复模式并csrutil disable在Terminal中执行命令。

免责声明:由于我尚未升级到El Capitan,因此我自己尚未对此进行测试。


1
已确认!在El Capitan也可以使用
双关

1
我已经弄清楚了,忘了回答我自己的问题。没错,我会接受你的。
特斯拉2015年

3
在我的系统上,正确的解决方法是仅安装/usr/includeusing xcode-select --install并使SIP保持启用状态。请参阅下面的答案以获取更多信息。
昂德里杰·塞蒂克

14

默认情况下,当您从El Capitan上的App Store安装Xcode(“开发人员工具”)时,它不会安装包含的“命令行开发人员工具” /usr/include。要安装“命令行开发人员工具”,请执行xcode-select --install,它会提示您是否要从App Store中获取Xcode +命令行工具(但我已经从App Store中安装了Xcode,而且显然不包含命令)行实用程序),因此我选择了“安装”,然后选择了“ install” /usr/include

至于系统完整性保护(SIP),请将其保持启用状态,因为这似乎是一件好事。之所以xcode-select --install成功地安装到受保护的/usr目录可能是因为xcode-select被列入白名单SIP。


1
我以为Xcode 8.x包含命令行工具,但只需要在全新安装的MacOS Sierra上执行此操作即可。我先安装了Xcode,然后仍然必须做xcode-select --install才能获得工具。
Leanne
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.