unix环境高级编程 关于apue.h的问题

本文提供了一份详细的《Unix环境高级编程》一书中apue.h配置步骤,包括源码下载、编译环境搭建、解决stropts.h缺失及ARG_MAX未定义等问题,帮助读者顺利进行实践。

唉,本来兴致勃勃的买来了被称为圣书的《unix环境高级编程》,结果作者大神还自己写个apue.h,唉,在网上找了许多资料,终于解决了

1.首先,到 http://www.apuebook.com/src.tar.gz下载源码,解压缩,最好解压缩到 家目录下,解压后路径位  /home/XXX/apue.2e/.

2.目录apue.2e下的Make.defines.linux ,修改WKDIR=/home/sar/apue.2e为你的apue.2e目录 ,比如WKDIR=/home/XXX/apue.2e

3.进入目录apue.2e/std/  , 替换所有的nawk为awk

4.返回apue.2e目录,编译,输入make

5.如果报错stropts.h找不到,在http://ftp.gnu.org/gnu/glibc/下载glibc-2.11,并解压缩,然后将一些头文件移动到相应目录
  cp ./glibc-2.11/streams/stropts.h /usr/include
  cp ./glibc-2.11/bits/stropts.h /usr/include/bits
  cp ./glibc-2.11/sysdeps/x86_64/bits/xtitypes.h /usr/include/bits

6.如果提示ARG_MAX未定义,则在apue.2e/include/apue.h中添加  #define ARG_MAX 4096   ,

  在apue.2e/threadctl/getenv1.c 和apue.2e/threadctl/getenv3.c中添加#include "apue.h"

6 修改脚本文件systype.sh 的权限,使其可执行,chmod u+x systype.sh

7.返回apue.2e 目录,执行make 命令。
8.把头文件apue.h复制到/usr/include/中
  sudo cp ~/apue.2e/include/apue.h /usr/include
  sudo  cp ~/apue.2e/lib/libapue.a /usr/lib
9 编译程序
gcc 源程序  -lapue 

转载于:https://www.cnblogs.com/lonelycatcher/archive/2012/05/10/2495046.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值