首先需要make一次源代码
编辑源码解压生成的apue.2e文件夹下的Make.defines.linux
修改WKDIR=/home/var/apue.2e为你的apue.2e目录,比如我的apue源码解压在/home/biye,那我就改为:
WKDIR=/home/biye/apue.2e
然后进入apue.2e/std 目录,编辑linux.mk。修改里面所有的nawk为awk。
最后返回apue.2e目录,执行make命令。
接下来就是编译书中出现的各种实例了:
以编译file文件夹下的ls1.c为例,以下是编译源码时的错误提示跟解决方法(假定你的工作目录跟我的一样,为/home/biye/apue.2e)
错误提示1:
ls1.c:1:19: apue.h: No such file or directory
ls1.c: In function `main':
ls1.c:13: error: `NULL' undeclared (first use in this function)
ls1.c:13: error: (Each undeclared identifier is reported only once
ls1.c:13: error: for each function it appears in.)
解决办法:
拷贝apue.h到系统默认头文件目录中
$cp /home/biye/apue.2e/include/apue.h /usr/include
错误提示2:
/tmp/ccBBopm0.o(.text+0x2b): In function `main':
: undefined reference to `err_quit'
/tmp/ccBBopm0.o(.text+0x5f): In function `main':
: undefined reference to `err_sys'
collect2: ld returned 1 exit status
解决办法:
err_quit跟err_sys是作者自己定义的错误处理函数,需要单独定义头文件
在/usr/include 下新建一个名为myerr.h的文件
拷贝lib/error.c的内容到myerr.h(此头文件在原书的附录B中),然后保存,退出。
再次编辑ls1.c文件,在包含文件内加入#include"myerr.h"
重新编译通过后,执行./a.out /home/biye,结果如下:
分享到:
相关推荐
在Unix系统环境中,进行高级编程时,我们经常会接触到一些特定的头文件,这些头文件提供了系统调用和库函数的接口...因此,对于任何想要在Unix环境下从事高级编程工作的人员来说,理解和应用apue.h都是非常重要的一步。
UNIX环境高级编程(APUE),linux圣经级教程。
Unix环境高级编程内附源代码,apue.h,放到/usr/include下边即可
《Unix环境高级编程》第二版这本书的要用到的apue.h文件。
本书的前15章着重于理论知识的阐述,主要内容包括UNIX文件和目录、进程环境、进程控制、进程间通信以及各种I/O。在此基础上,分别按章介绍了多个应用实例,包括如何创建数据库函数库,PostScript 打印机驱动程序,...
总之,APUE2E的源码是学习UNIX环境高级编程的宝贵资料,它提供了大量实战案例,可以帮助你从理论到实践,全面掌握UNIX编程的核心技术。无论是初学者还是经验丰富的开发者,都可以从中获益匪浅。
通过结合阅读《UNIX环境高级编程》和使用`apue.h`,你可以更好地掌握UNIX系统编程的精髓,这对于开发高效、稳定的UNIX/Linux应用程序至关重要。 总之,`apue.h`是《UNIX环境高级编程》一书中用于实践的重要资源,它...
《Unix环境高级编程》(Advanced Programming in the Unix Environment, 简称APUE) 是一本经典的操作系统编程书籍,由W. Richard Stevens撰写,旨在帮助程序员深入理解和掌握在Unix系统中进行系统级编程的技术和方法...
Unix环境高级编程里用到的头文件...
APUE Unix环境高级编程 第二版 pdf版 无需多说,大师经典之作
《Unix环境高级编程》(Advanced Programming in the UNIX Environment, 简称APUE) 是一本经典的技术书籍,尤其对于深入理解和开发Unix系统来说是不可或缺的资源。英文第三版更是汇集了作者多年的实践经验与深入的...
《Unix环境高级编程》是一本深受程序员和系统管理员喜爱的经典之作,主要涵盖了在Unix操作系统环境下进行高级编程的各种技术和方法。这本书分为多个章节,详细讲解了Unix系统接口、进程管理、文件系统、网络通信等...
UNIX环境高级编程(APUE)V3 UNIX环境高级编程(APUE)V3 UNIX环境高级编程(APUE)V3
《Unix环境高级编程》(Advanced Programming in the Unix Environment, 简称APUE) 是一本经典的操作系统编程书籍,由Stephen R. Johnson所著。这本书深入讲解了在Unix系统上进行高级程序设计的方法,涵盖了系统调用...
《Unix环境高级编程(APUE) 正版pdf 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。...
《Advanced Programming in the UNIX® Environment, Third Edition》(中译《APUE:UNIX环境高级编程第三版》)是由史蒂文斯(W. Richard Stevens)原作、斯蒂芬·Rago(Stephen A. Rago)修订的书籍,它被广泛认为...
《UNIX环境高级编程》第三版是一本经典的UNIX系统编程指南,涵盖了广泛的UNIX系统接口和编程技术。随书附带的代码库"apue.3e"是作者为书中各章节精心设计的实例,旨在帮助读者深入理解并实践UNIX编程的核心概念。 ...
《Unix高级环境编程》第三版是一本深入探讨Unix系统编程的经典著作,对于任何希望在Unix或类Unix系统上进行高级程序开发的工程师来说,都是一本不可或缺的参考书。本书涵盖了Unix系统接口、进程管理、文件I/O、信号...
《UNIX环境高级编程》中文第三版是一本深受程序员和系统管理员喜爱的经典著作,它深入浅出地介绍了在UNIX操作系统环境下进行程序开发的各种技术与实践。这本书涵盖了从基本的文件I/O到复杂的进程间通信,从信号处理...