UNIX環境高級編程-環境配置


引用:http://blog.csdn.net/segen_jaa/article/details/8093471

背景說明:

os:ubuntu 13.10   64位

主目錄:/home/zz    (也就是~)

通過terminal下命令完成配置

參考文章:

http://linux.chinaunix.net/techdoc/system/2009/02/08/1061504.shtml

http://www.linuxidc.com/Linux/2011-10/44835.htm


1、  下載apue.2e(選擇對應書籍):http://www.apuebook.com/code2e.html

2、  複製src.tar.gz文件到/home/zz(自建目錄)下解壓生成/home/zz/apue.2e

3、  修改文件apue.2e/ Make.defines.linux  :WKDIR=/home/me/mydir/unixl/apue.2e

4、  複製apue.2e/lib/error.c到/usr/include目錄下:sudo cp /home/zz/apue.2e/lib/error.c   /usr/include

5、  修改apue.2e/apue.h文件,文件末尾#endif之前添加下面語句。#include"error.c"

        (這裏簡單說下:err_相關函數是作者自己寫的,所以需要將error.c引用進apue.h)

6、  複製apue.2e/apue.h文件到/usr/include目錄下。

7、/home/zz/workspace/unix目錄(我的項目目錄),創建示例程序1.c。

  1. #include "apue.h"  
  2. #include <dirent.h>  
  3.   
  4. int main(int argc, char* argv[])  
  5. {  
  6.   DIR *dp;  
  7.   struct dirent *dirp;  
  8.   
  9.   if (argc != 2)  
  10.     err_quit("usage: ls directory_name");  
  11.   
  12.   if ((dp = opendir(argv[1])) == NULL)  
  13.     err_sys("can't open %s", argv[1]);  
  14.   
  15.   while ((dirp = readdir(dp)) != NULL)  
  16.     printf("%s\n", dirp->d_name);  
  17.   
  18.   closedir(dp);  
  19.     
  20.   return 1;  
  21. }  

最後,編譯並運行該示例程序

$ gcc 1.c          (生成二進制可執行文件a.out)

$ ./a.out             

輸出: usage: ls directory_name


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章