Unix环境高级编程——解决第一个问题“apue.h: No such file or directory”
Lubang_Future 2020-07-16 10:45:11 439 收藏 2
分类专栏: Unix环境高级编程 Linux C 文章标签: linux unix
版权
Unix环境高级编程
————————————————– 《Unix环境高级编程 》笔记详情(一)—————————————————————-
第一次接触到《Unix环境高级编程》(第三版)是在大三,看得云里雾里,很快便从入门到放弃。大四上完嵌入式的课程,自己在b站看了一些视频,再看看这本书,才发现这本书的强大。很多视频以及教程都是基于这本书去介绍Linux的(Linux 是一个类似 Unix 的操作系统,Unix 要早于 Linux,Linux 的初衷就是要替代 UNIX,并在功能和用户体验上进行优化,所以 Linux 模仿了 UNIX(但并没有抄袭 UNIX 的源码),使得 Linux 在外观和交互上与 UNIX 非常类似。如果想了解Unix跟Linux之间的故事,可以看看我随便搜的网址:http://c.biancheng.net/view/707.html,)
工作中无非就是出现问题、解决问题的过程,那么,今天以一个问题以及如何解决这个问题开始《Uinx环境高级编程》之旅。
问题——在编译书本源码的时候出现如下错误:“apue.h: No such file or directory”
为什么会出现这个问题呢?大家看过之前我的笔记:https://mp.csdn.net/console/editor/html/88817936,就可以发现,只要有API的调用,就需要有对应的头文件,我们用man手册查看函数原型的时候也能明显看到。当API个数越多所需要的头文件就越多,这样还没看代码头文件看起来就很长。所以,《Unix环境高级编程》的作者为了大大减少了试例代码的长度,将很多包含头文件的代码封装到了apue.h文件(详情看书本附录B)
解决问题:
一、下载源码
从unix高级编程书籍官网下载书籍的上的所有源码:http://www.apuebook.com。当然不想用浏览器的也可以使用指令:
wget http://www.apuebook.com/src.3e.tar.gz
选择对应的版本并下载源码
二、解压这个文件
tar -zxvf src.tar.gz
解压后文件会放在apue.2e目录下,这个目录里包含了书本上的源码,也包含了apue.h和error.c文件。
三、复制apue.h到/usr/include/下
cp ./apue.2e/include/apue.h /usr/include/
此时/usr/include/下没有apue.h文件,直接复制即可
四、复制error.c到/usr/include/下
cp ./apue.2e/lib/error.c /usr/include/
注意看清楚这里error.c,步骤三是errer.h
五、/usr/include/apue.h文件 配置
使用vi编辑器打开文件:
vi /usr/include/apue.h
在文件最后#endif前加上包含error.c的代码:
#include “error.c”;
搞定!
接下去可以畅快的编译书本的源码,开启你的《Unix环境高级编程》之旅!!加油!奥里给!!!
————————————————
版权声明:本文为CSDN博主「Lubang_Future」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41899773/article/details/107376991