最近在温习APUE(《unix环境高级编程》),以前都是在linux下搞,现在打算在自己机器弄下,于是google了下,把编译的事情搞定了,修改了一些教程的一些错误,比如下载链接之类的。
- 下载源文件
wget http://www.apuebook.com/src.3e.tar.gz
- 解压
tar -zxf src.3e.tar.gz
- 编译
cd apue.3e && make all
- 复制头文件
cp ./include/apue.h /usr/local/include/
cp ./lib/error.c /usr/local/include/
- 修改
apue.h
vim /usr/local/include/apue.h
# 按`shift + G`跳转至最后一行,在 #end if 之前插入
#include "error.c"
- 测试一下
#include "apue.h"
#include <dirent.h>
int main(int argc, char *argv[]) {
DIR *dp;
struct dirent *dirp;
if (argc != 2) {
err_quit("usage:ls directory_name");
}
if ((dp = opendir(argv[1])) == NULL) {
err_sys("can't open %s", argv[1]);
}
while ((dirp = readdir(dp)) != NULL) {
printf("%s\n", dirp->d_name);
}
closedir(dp);
exit(0);
}