zoukankan      html  css  js  c++  java
  • UNIX环境高级编程(第三版)关于apue.h的用法

    UNIX环境高级编程(第三版)中的例子用到apue.h这个头文件,但是书里面写的地址已经不能访问。

    经过一番查找之后,找到如下解决方案:

    1、到www.apuebook.com上下载第2版的源码,也可以直接点这里

    2、下载后的源码,需要修改一下:

        1、Make.defines.linux中第6行WKDIR=/home/sar/apue.2e更改为目录的绝对路径。

        2、apue.2e/ipp/ipp.h中第122行中的status换为Status。(也可换为其他,但要与下面对应)

        3、apue.2e/ipp/printd.h中第977行中的status替换为Status。(与上面对应)

        4、apue.2e/threadctl/getenv1.c和/root/apue.2e/threadctl/getenv3.c中第1行#include <limits.h>更换为#include <linux/limits.h>

    3、在apue.2e目录执行make命令进行编译。如果编译通过,会在apue.2e/lib/目录下生成libapue.a静态链接库文件。

    4、apue.2e/lib/libapue.a拷贝至/usr/local/lib/目录下。

    5、apue.2e/include/apue.h拷贝至/usr/local/include/目录下。

    6、完成,但编译时要加上-lapue指令,例如编译test.c文件,执行:gcc test.c -lapue

    补充说明:程序里面的err_quit,err_sys等等函数在apue.2e/lib/error.c中, error.c 实现apue.h中的出错处理函数。

    当然,如果按照上面的步骤制作了libapue.a库的话,不需要单独包含error.c

  • 相关阅读:
    [HNOI2002]营业额统计 (Splay)
    [POJ1664] 放苹果 (动态规划,组合数学)
    [AHOI2009]维护序列 (线段树)
    类型转换求和
    懒人创造方法
    编程的精义
    10-instanceof
    9-接口
    6-SUPER关键字
    5-重写与重载
  • 原文地址:https://www.cnblogs.com/litifeng/p/5815413.html
Copyright © 2011-2022 走看看