APUE 學(xué)習(xí)環(huán)境配置

最近開始學(xué)習(xí) APUE ,因?yàn)榱?xí)慣了用 IDE ,所以選擇 CLion 作為學(xué)習(xí)環(huán)境。配置環(huán)境的過程中在網(wǎng)上查詢了很多資料,繞了一些彎子。最后用比較簡單的方式解決了問題。

開發(fā)環(huán)境:Deepin 15.5 + CLion + GCC 6.4.0

  1. 下載隨書源代碼,并解壓

    wget http://www.apuebook.com/src.3e.tar.gz
    tar -xzvf src.3e.tar.gz
    
  2. 安裝 libbsd

    sudo apt install libbsd-dev
    
  3. 編譯

    cd apue.3e
    make
    
  4. 復(fù)制頭文件和編譯產(chǎn)生的鏈接庫

    sudo cp lib/libapue.a /usr/local/lib/
    sudo cp include/apue.h /usr/local/include/
    
  5. 新建 CLion C 工程,修改 CMakeLists.txt 文件

    cmake_minimum_required(VERSION 3.9)
    project(APUE C)
    
    set(CMAKE_C_STANDARD 11)
    
    link_libraries(apue)
    
    add_executable(ls1 ls1.c)
    
  6. 按書中的示例編寫代碼

    #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);
    
        return 0;
    }
    
  7. 編譯運(yùn)行即可(運(yùn)行結(jié)果省略)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容