unix环境高级编程 笔记1
2013-05-01 21:55
260 查看
这个学期选修了unix环境高级编程课,而且本周已经是开学第10周,所以开始复习一下。
第一章的第一个例子,在验证过程中遇到的问题。
参考连接:http://www.cnblogs.com/feiling/archive/2012/02/15/2353286.html
问题: error: apue.h: no such file or directory
apue.h是《UNIX环境高级编程》作者自定义的一个文件,并不是Unix/Linux系统自带的,此头文件包括了Unix程序所需的常用头文件及作者自己写的出错处理函数。所以在默认情况下,gcc在编译时是读不到这个头文件的。
首先,在网站http://www.apuebook.com上,下载对应的源码包,将其解压至某个目录,比如/home/huayp/下,然后进入目录apue.2e,把文件Make.defines.linux 中:
WKDIR=/home/xxx/apue.2e 修改为 WKDIR=/home/huayp/apue.2e,
然后再进入apue.2e目录下的std目录,打开linux.mk,将里面的nawk全部替换为awk;
然后在此目录下运行make命令,即回到 /home/huayp/apue.2e 目录在终端中输入 “./make”(不含引号,我在实现过程中使用的make,不需要输入./);
最后,把 /home/godsoul/apue.2e/inlcude 目录下的 apue.h 文件和位于 /home/godsoul/apue.2e/lib 目录下的 error.c 文件都复制到 /usr/include 目录下;将apue.2e/lib/libapue.a 复制到/usr/lib/和 /usr/lib64下。注意复制这写文件时,需要有root权限。在ubuntu下,可以使用sudo命令实现使用root权限进行复制文件,例如
sudo cp lib/apue.h /usr/include
之所以要这样做,是因为gcc在链接头文件时会到 /usr/include这个目录下寻找需要的头文件,若找不到则报错。
最终还要编辑一下复制过来的 apue.h
文件
在最后一行#endif 前面添加一行 #include“error.c”
这样就不会报错了。
运行结果图:
第一章的第一个例子,在验证过程中遇到的问题。
参考连接:http://www.cnblogs.com/feiling/archive/2012/02/15/2353286.html
问题: error: apue.h: no such file or directory
apue.h是《UNIX环境高级编程》作者自定义的一个文件,并不是Unix/Linux系统自带的,此头文件包括了Unix程序所需的常用头文件及作者自己写的出错处理函数。所以在默认情况下,gcc在编译时是读不到这个头文件的。
首先,在网站http://www.apuebook.com上,下载对应的源码包,将其解压至某个目录,比如/home/huayp/下,然后进入目录apue.2e,把文件Make.defines.linux 中:
WKDIR=/home/xxx/apue.2e 修改为 WKDIR=/home/huayp/apue.2e,
然后再进入apue.2e目录下的std目录,打开linux.mk,将里面的nawk全部替换为awk;
然后在此目录下运行make命令,即回到 /home/huayp/apue.2e 目录在终端中输入 “./make”(不含引号,我在实现过程中使用的make,不需要输入./);
最后,把 /home/godsoul/apue.2e/inlcude 目录下的 apue.h 文件和位于 /home/godsoul/apue.2e/lib 目录下的 error.c 文件都复制到 /usr/include 目录下;将apue.2e/lib/libapue.a 复制到/usr/lib/和 /usr/lib64下。注意复制这写文件时,需要有root权限。在ubuntu下,可以使用sudo命令实现使用root权限进行复制文件,例如
sudo cp lib/apue.h /usr/include
之所以要这样做,是因为gcc在链接头文件时会到 /usr/include这个目录下寻找需要的头文件,若找不到则报错。
最终还要编辑一下复制过来的 apue.h
文件
在最后一行#endif 前面添加一行 #include“error.c”
这样就不会报错了。
运行结果图:
相关文章推荐
- Unix环境高级编程 第一章 学习笔记
- unix环境高级编程笔记 (1) 准备篇
- 4.28 UNIX环境高级编程 笔记
- 《 Unix环境高级编程 》笔记
- unix环境高级编程笔记--持续更新
- UNIX环境高级编程笔记之文件I/O
- UNIX环境高级编程(阅读笔记)---多线程信号
- Unix环境高级编程学习笔记1—a.out的实现
- Unix环境高级编程学习笔记之进程环境(1)
- 文件io(二)--unix环境高级编程笔记
- UNIX环境高级编程笔记——高级IO,进程间通信,套接字,高级进程间通信
- unix环境高级编程(阅读笔记)----线程同步
- unix环境高级编程笔记--高级IO
- UNIX环境高级编程笔记之进程控制
- Unix环境高级编程(阅读笔记)-----kill、raise、alarm、pause函数
- Unix环境高级编程笔记:12、高级IO
- UNIX环境高级编程笔记之线程
- UNIX环境高级编程_学习笔记(一)
- Unix环境高级编程笔记——补充
- UNIX环境高级编程笔记之线程