UNIX高级环境编程(第二版)程序运行
2011-12-21 16:02
148 查看
APUE中的代码不是download下来就可以直接编译执行的。由于头文件的问题,需要做相关的设置,修改一下相关的文件。
首先从http://www.apuebook.com/src.tar.gz下载源码压缩包,解压到相应目录,例如:
mkdir /home/Rockics/src
cd /home/Rockics/src/
wget http://www.apuebook.com/src.tar.gz
tar zxvf src.tar.gz
解压以后得到文件夹apue.2e。按照以下步骤完成设置,则可以编译相关代码:
1.进入相应目录:cd apue.2e;
2.修改文件Make.defines.linux:将其中的WKDIR 修改为/home/Rockics/src/apue.2e,保存退出;
3.修改文件std/linux.mk:将其中的nawk全部修改为wak,可在vi下使用命令:%s/nawk/awk/g完成;
4.修改文件include/apue.h:在文件倒数第二行(也就是#endif之前)加入:#include "error.c"; 这一行;
5.切换到root账户,将include/apue.h还有lib/error.c拷贝一份到/usr/include/下
设置完毕:)
测试:
我运行APUE的第一个程序实验一下环境是否OK:
APUE的第一个程序是myls.c,文件位于file/ls1.c,试试看其是否编译通过哈:
[Rockics@localhost apue.2e]$ gcc -o myls -Wall file/ls1.c
很好,没有任何警告,设置成功。
首先从http://www.apuebook.com/src.tar.gz下载源码压缩包,解压到相应目录,例如:
mkdir /home/Rockics/src
cd /home/Rockics/src/
wget http://www.apuebook.com/src.tar.gz
tar zxvf src.tar.gz
解压以后得到文件夹apue.2e。按照以下步骤完成设置,则可以编译相关代码:
1.进入相应目录:cd apue.2e;
2.修改文件Make.defines.linux:将其中的WKDIR 修改为/home/Rockics/src/apue.2e,保存退出;
3.修改文件std/linux.mk:将其中的nawk全部修改为wak,可在vi下使用命令:%s/nawk/awk/g完成;
4.修改文件include/apue.h:在文件倒数第二行(也就是#endif之前)加入:#include "error.c"; 这一行;
5.切换到root账户,将include/apue.h还有lib/error.c拷贝一份到/usr/include/下
设置完毕:)
测试:
我运行APUE的第一个程序实验一下环境是否OK:
APUE的第一个程序是myls.c,文件位于file/ls1.c,试试看其是否编译通过哈:
[Rockics@localhost apue.2e]$ gcc -o myls -Wall file/ls1.c
很好,没有任何警告,设置成功。
相关文章推荐
- UNIX高级环境编程(第二版)程序运行
- UNIX高级环境编程(第二版)程序运行
- 深入理解计算机系统(第二版)----之01:(二:在系统上运行程序)链接
- 《Windows程序设计》[第二版] - 第2章 Win32程序运行原理 - 其他进程内存修改器
- UNIX环境高级编程第二版第一个程序运行成功
- 《Windows程序设计》[第二版] - 第2章 Win32程序运行原理 - 创建进程
- 《Windows程序设计》[第二版] - 第2章 Win32程序运行原理 - 遍历系统进程和模块
- 《Windows程序设计》[第二版] - 第2章 Win32程序运行原理 - 关闭指定名称的进程
- java学习三 java程序的编译和运行
- windos 下程序启动与运行自动化
- 解决Windows XP中任务栏不显示运行程序按钮的故障
- 提高程序运行速度 让Ext JS华而又实
- ios后台运行程序
- linux下测试程序运行的时间
- node.js安装express:'express' 不是内部或外部命令,也不是可运行的程序或批处理文件。
- Python cmd中输入'pip' 不是内部或外部命令,也不是可运行的程序或批处理文件。
- 单片机内程序运行的时候ram空间是如何分配的?
- mini2440开机自动运行自编qt程序
- c# 程序只能运行一次(多次运行只能打开同一个程序) 并激活第一个实例,使其获得焦点,并在最前端显示.
- Linux环境下C++只允许单个程序运行