您的位置:首页 > 编程语言

UNIX环境高级编程官方源码编译不过的修改

2012-03-06 00:00 302 查看
一. 编译源代码:

1. APUE的源代码可以从 www.apuebook.com下载

2. 解压 tar -xzvf src.tar.gz 预设解压名称为 apue.2e

3. 阅读readme并修改工作目录,我是ubuntu系统,所以修改Make.defines.linux文件

内容为 WKDIR = /home/leo/apue/apue.2e (根据各自工作路径进行修改)

4. [貌似这步为可选] 进入apue.2e/std目录,编辑linux.mk,修改里面所有的nawk为awk。

5. 在apue.2e目录下运行make命令

6. 错误解决,编译threadctl时会提示“ARG_MAX”未定义,有两种解决方法

方法一: 在usr/include/limits.h里添加 #define ARG_MAX 4096

方法二: 在apue.2e/include/apue.h中添加一行: #define ARG_MAX 4096

打开apue.2e/threadctl/getenv3.c(包括getenv1.c),添加一行: #include "apue.h"

7. 再次编译即可

二. 使用源代码:

1. 获取源代码软连接与位置

leo@leo-Veriton-M275:~/apue/apue.2e$ ls -l fig1.3

lrwxrwxrwx 1 leo leo 10 2011-11-30 17:56 fig1.3 -> file/ls1.c

2. 进入file目录 leo@leo-Veriton-M275:~/apue/apue.2e/file$ ls

3. 运行 leo@leo-Veriton-M275:~/apue/apue.2e/file$ ./ls1 /home/

.

leo

..
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: