博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在OS X 10.11 中使用 "apue.h" (3rd Edition)
阅读量:4360 次
发布时间:2019-06-07

本文共 855 字,大约阅读时间需要 2 分钟。

在苹果 OS X 10.11 El Capitan 中使用《UNIX环境高级编程--第三版》中提供的头文件 apue.h 。

make apue.3e


这里我买的是第三版的书,和第二版不同,不用改工作路径等信息。正如在readme中说到的,在OS X上进入目录直接make即可。

修改apue.h


我们需要在apue.h的最后部分的

#endif /* _APUE_H */

前面加上一句:

#include "error.c"

最终是这样的:

apue_h

关于/usr/include/


首先在OS X中,直接打开目录 /usr/include/,会发现系统找不到目录,解决方法是安装 command line tools,如果你安装了Xcode,可以在Xcode中进行安装,但是Xcode那么大,下载起来很麻烦的,我们可以采用这个方法:

直接在终端中执行

xcode-select --install

成功安装之后就可以看到这个目录了:

ls

无权限修改/usr/include/


我们在make之后,就要把 apue.3e/include/ 中的 apue.hapue.3e/lib/ 中的 error.c 拷贝到 /usr/include/ 目录中,但是会发现在OS X 10.11 中是 Permission Denied

是因为OS X 在 El Capitan 中开启了一个叫 SIP 的操作系统保护机制,对于高级的OS X 使用者来说,这个功能是可以关闭的。

解决方案: 重启 Command + R, 进入终端输入

csrutil disable

再开机之后就可以进行复制的操作了:

cp include/apue.h /usr/include/apue.hcp lib/error.c /usr/include/error.c

结束


经过上面的操作之后,成功编译书中的第一个例子程序:

gcc

搞定!

转载于:https://www.cnblogs.com/guoyunzhe/p/6277720.html

你可能感兴趣的文章
SpringCloud+feign 基于Springboot2.0 负载均衡
查看>>
【BZOJ5094】硬盘检测 概率
查看>>
大庆金桥帆软报表案例
查看>>
Proxy模式
查看>>
读书多些会怎样
查看>>
浏览器好用的技术
查看>>
HDU 2188------巴什博弈
查看>>
tp5任务队列使用supervisor常驻进程
查看>>
Xmind?
查看>>
spring+quartz 实现定时任务三
查看>>
day2-三级菜单
查看>>
linux下升级4.5.1版本gcc
查看>>
Beanutils
查看>>
FastJson
查看>>
excel4j
查看>>
Thread
查看>>
char * 与char []探究理解
查看>>
QT窗体显示在屏幕中间位置
查看>>
emmet使用技巧
查看>>
RPC-Thrift(二)
查看>>