估计好多学习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头文件。上述步骤其实有好多细节及原因没有说明,有兴趣可以研究研究。

unix环境高级编程第三版源代码编译及使用相关推荐

  1. Linux - Unix环境高级编程(第三版) 代码编译

    Unix环境高级编程(第三版) 代码编译 本文地址:http://blog.csdn.net/caroline_wendy 时间:2014.10.2 1. 下载代码:http://www.apuebo ...

  2. UNIX环境高级编程(第三版 源码及编译好的静态库文件)

    UNIX环境高级编程(第三版) 源码 及 库文件 链接: https://pan.baidu.com/s/1tPY17lWNDEbzkOwZaRUUNg 提取码: 1024 复制这段内容后打开百度网盘 ...

  3. UNIX环境高级编程-第三版

    Unix环境高级编程-第三版 之前学习了<Linux系统编程>对于常见的概念和函数都有了基础的认知,这里准备通过这本书,深入学习系统API相关内容.笔记内容会有所倾向,不会严格反应书本内容 ...

  4. 《UNIX环境高级编程(第3版)》

    <UNIX环境高级编程(第3版)> 基本信息 原书名:Advanced Programming in the UNIX Environment (3rd Edition) (Addison ...

  5. 开发日记-20190827 关键词 读书笔记《Unix环境高级编程(第二版)》DAY 3

    Referred Blogs 文件描述符标志,文件状态标志 Linux中文件描述符fd和文件指针flip的理解 Linux编程–文件描述符fd 文件共享 Unix支持在不同进程间共享文件. 内核使用了 ...

  6. 开发日记-20190822 关键词 读书笔记《Unix环境高级编程(第二版)》《掌控习惯》DAY 2

    Preface 话说,昨天开始尝试着去改变自己,从基础的习惯开始,11:30准时睡觉,平时差不多12:30才睡觉.按理说,比平时早了一个小时睡觉吧,然后我就把闹钟提前了45分钟,想着还能比平常多睡15 ...

  7. UNIX环境高级编程(三)—— 静态链接库与动态链接库

    动态链接库一般不开放源码,需要建工程才能使用(其中提供的接口和 API): 0. .a/.o/.so What are .a and .so files? .o 就相当于 windows 里的 obj ...

  8. 开发日记-20190828 关键词 读书笔记《Unix环境高级编程(第二版)》DAY 4

    Part 1 文件与目录 设置用户ID和设置组ID 与一个进程相关联的ID有6个或更多. 实际: 实际用户ID/实际组ID 我们实际上是谁 有效: 有效用户ID/有效组ID/附属组ID 用于文件访问权 ...

  9. 开发日记-20190902 关键词 读书笔记《Unix环境高级编程(第二版)》DAY 7

    读目录 对某个目录具有存取许可权的单一用户都可读该目录,但是只有内核才能与目录(防止文件系统发生混乱).一个目录的写许可权位和执行许可权位决定了在该目录中是否能够创建新文件以及删除文件,它们并不表示能 ...

最新文章

  1. Codeforces 41D Pawn 简单dp
  2. sql group by having用法_神奇的 SQL 为什么 GROUP BY 之后不能直接引用原表中的列?...
  3. 【机器学习基础】结合论文理解XGBoost推导过程
  4. 南京大学2021计算机考研复试线是多少,34所自划线院校2021考研复试分数线-2021南京大学考研分数线已公布...
  5. Lock的lock()方法
  6. python-面向对向-实例方法的继承-多继承父类中的super与子类实例对象的关系
  7. Kafka和RocketMQ底层存储:零拷贝技术
  8. OpenCV4每日一练day9:单目相机标定
  9. 文件类型总结 MIME
  10. SQL的bit列名转换成access是/否数据类型,True无效的问题
  11. 【数字基带信号】基于matlab数字基带信号波形仿真【含Matlab源码 988期】
  12. 怎么用python找资料_python去哪里找资源教程学习?
  13. Python数据挖掘Pandas
  14. mysql数据库首次查询缓慢
  15. android高德地图获取海拔_高德地图如何测海拔
  16. ASAN Runtime【源码分析】(一)——初始化
  17. 微信小程序之支付密码输入
  18. 猿辅导2017 笔试题
  19. plsql快速导入sql文件
  20. 五大存储模型关系模型 键值存储 文档存储 列式存储 图形数据库

热门文章

  1. 使用Java解决远程文件下载解决方案
  2. STM32F4 FFT 音乐频谱 不要太easy!
  3. 前端一个月面试小记,字节、蚂蚁、美团、滴滴
  4. 2021年CS保研经历(三):清华大学自动化学院大数据专硕预推免
  5. Dubbo——微服务框架
  6. 谭浩强c语言视频教程bt种子,c语言视频教程BT种子文件(谭浩强)
  7. 笔记实践 | 基于LSTM实现谣言检测 |初识长短记忆神经网络
  8. OpenCV-Python图像处理:腐蚀和膨胀原理及erode、dilate函数介绍
  9. ASEMI超快恢复二极管SF58资料
  10. [转载]说说大型高并发高负载网站的系统架构