估计好多学习unix/linux的程序员都知道有这么一本书,最近笔者也开始膜拜膜拜此书,在编译源代码的时候,遇到了一些问题,现在在这里做下总结,加深自己的印象,或许也有遇到此问题的同仁,可以参考参考!
先强调一下,笔者的开发环境是centos6.8,按照如下步骤来编译源代码,并搭建自己的开发环境:
(1)下载源代码,可以去官网下载:http://apuebook.com/code3e.html
如果实在看不懂这英文,好吧,我已经上传啦,直接下载就可以:http://download.csdn.net/detail/aboboo5200/9766769
(2)解压缩源代码文件:tar -zxvf src.3e.tar.gz
(3)安装libbsd-devel,否则编译会报错不通过,会提示编译threads文件夹里面的内容时报错,报错信息就不贴出来啦:yum install libbsd-devel
(4)执行如下命令:
cd apue.3e
make
用root用户或者sudo执行以下命令:
cp ./include/apue.h /usr/include/
cp ./lib/libapue.a /usr/local/lib/
cp ./lib/libapue.a /usr/lib/
(5)创建apueerror.h头文件,源代码就不贴上来啦,直接下载吧:http://download.csdn.net/detail/aboboo5200/9766770
(6)执行以下命令: cp apueerror.h /usr/include/
(7)在要编译运行的代码中#include<apue.h>的下一行增加一行:#include<apueerror.h>
接下来,执行gcc编译命令就可以正确的运行书上所有的实例代码啦,千万别忘记啦在有引用到err_相关的方法的实例代码的头部引入apueerror.h头文件。上述步骤其实有好多细节及原因没有说明,有兴趣可以研究研究。