想要直接使用作者提供的源**就需要編譯下,這個檔名是src.3e.tar.gz
很簡單的幾步就搞定了.
① 解壓src.3e.tar.gz
② 進入apue.3e
③ make
④ 進入apue.3e/lib目錄,複製libapue.a到/usr/local/lib目錄
⑤ 進入
apue.3e/
include目錄,複製
apue.h到/usr/include目錄
⑥ 複製
apueerror.h到/usr/include目錄
apueerror.h檔案
#include "apue.h"
#include /* for definition of errno */
#include /* iso c variable aruments */
static void err_doit(int, int, const char *, va_list);
/* * nonfatal error related to a system call.
* print a message and return.
*/void
err_ret(const char *fmt, ...)
/* * fatal error related to a system call.
* print a message and terminate.
*/void
err_sys(const char *fmt, ...)
/* * fatal error unrelated to a system call.
* error code passed as explict parameter.
* print a message and terminate.
*/void
err_exit(int error, const char *fmt, ...)
/* * fatal error related to a system call.
* print a message, dump core, and terminate.
*/void
err_dump(const char *fmt, ...)
/* * nonfatal error unrelated to a system call.
* print a message and return.
*/void
err_msg(const char *fmt, ...)
/* * fatal error unrelated to a system call.
* print a message and terminate.
*/void
err_quit(const char *fmt, ...)
/* * print a message and return to caller.
* caller specifies "errnoflag".
*/static void
err_doit(int errnoflag, int error, const char *fmt, va_list ap)
編譯下示例程式
#include "apue.h"
#include "apueerror.h"
static void sig_usr(int);
int main(void)
static void sig_usr(int signo)
編譯成功就ok了.
編譯原理第三版 作業一
編譯原理 1 解釋下列術語 源程式 源語言編寫的程式叫源程式。編譯程式 如果源語言為高階語言,目標語言為某台計算機上的組合語言或機器語言,則此翻譯程式稱為編譯程式 目標程式 目標語言書寫的程式稱為目標程式 編譯程式的前端 它由這樣一些階段組成 這些階段的工作主要依賴於源語言而與目標機無關。通常前端包...
UnixShell程式設計 第三版
這本書相當老了,04年的,現在 在linux上做實驗。1,date 顯示日期。2,who 顯示使用者,who am i 3,echo 後面字串會全部輸出,會過濾掉多餘空格,單雙引號,分號等。4,ls 列出檔案。5,cat 檢視檔案。6,wc 檔名,第乙個數字是檔案行數,第二個數字是檔案單詞書,第三個...
apue第三版庫檔案編譯出錯問題解決
最近看apue第三版tar xvzf src.3e.tar.gz cd apue.3e make此時編譯完會提示有錯誤,此處解決方案來自 傻子豆餅的部落格 barrier.c text 0x6e undefined reference to heapsort collect2 ld 返回 1 cd ...