看板 b89902xxx 關於我們 聯絡資訊
※ 引述《somi (SoMiMi FaReRe)》之銘言: @@此版本適用於系上的Debian Linux @@首先設定proxy server以免出國太慢time out,也可以不設定 [b89098]/home/student/89/b89098$ setenv ftp_proxy proxy.ntu.edu.tw:3128 如果是bash shell請用export ftp_proxy=proxy.ntu.edu.tw:3128 使用wget抓取檔案,其他像是ncftpget...都可以用法請自己man wget [b89098]/home/student/89/b89098$ \(請不要換行打到底) wget ftp://ftp.uu.net/published/books/stevens.advprog.tar.Z @@用tar把檔案解開,參數(unZip,eXtract,Verbose,Filename) @@詳細用法參照man tar [b89098]/home/student/89/b89098$ tar zxvf stevens.advprog.tar.Z [b89098]/home/student/89/b89098$ cd apue/ @@可以先打開 readme來看看,我事先看過了 @@第一步: @@因為Linux是屬於Svr4系列的UNIX,所以 [b89098]/home/student/89/b89098/apue$ cp Make.def.svr4 Make.defines 請用習慣的文字編輯器(joe,pico...)來編輯Make.defines,我用的是vim, [b89098]/home/student/89/b89098/apue$ vim Make.defines @@把路徑改成自己放檔案的地方,可以用pwd來得到目前工作目錄 #Original LDFLAGS=/home/stevens/libmisc.a LDFLAGS=/home/student/89/b89098/libmisc.a ...<deleted>... # Original: LIB = /home/stevens/libmisc.a LIB = /home/student/89/b89098/libmisc.a [b89098]/home/student/89/b89098/apue$ cd lib.svr4 @@開啟sterror.c把char* sys_errlist[];註解掉 [b89098]/home/student/89/b89098/apue/lib.svr4$ vim strerror.c @由於sys_errlist與stdio.h中的宣告不同 所以發生矛盾 //extern char *sys_errlist[]; [b89098]/home/student/89/b89098/apue/lib.svr4$ make svr4 @@看看有編出libmisc.a這個檔案(在apue/下)就代表成功了 @@沒有error就代表成功了 ls -l ../libmisc.a -rw-rw-r-- 1 b89098 student 43528 Mar 4 19:02 ../libmisc.a make[1]: Leaving directory `/mnt/89/b89098/apue/lib.svr4' @@好了,回上一層 [b89098]/home/student/89/b89098/apue/lib.svr4$ cd .. @@來編個檔案測試看看 [b89098]/home/student/89/b89098/apue$ cd file/ @@看看有哪些source file,像access.c [b89098]/home/student/89/b89098/apue/file$ make access cc ../libmisc.a access.c ../libmisc.a -o access [b89098]/home/student/89/b89098/apue/file$ ./access / read access OK open for reading OK 成功 ※ 編輯: somi 來自: 127.0.0.1 (03/04 20:41) ※ 編輯: somi 來自: 127.0.0.1 (03/04 20:44) ※ 編輯: somi 來自: 127.0.0.1 (03/04 20:45)