1. 程式人生 > >c語言------靜態庫和動態庫的建立和使用

c語言------靜態庫和動態庫的建立和使用

一.  靜態庫

      1. 靜態庫的建立
          gcc  -c  原始檔 . c                                 //為了得到原始檔的 . o 檔案
          ar  rcs 靜態庫名  檔名1  檔名2   //靜態庫名取libname . a方便呼叫
          rc                                                              //靜態庫不存在
          ar  s                                                          //更新靜態庫
          關於靜態庫建立的其他指令:
          ar  -t  libname . a                                          //檢視libname . a靜態庫包含的檔案
          ar  -d  libname . a  檔案1. o  檔案2.o        //刪除靜態庫libname.a中的檔案1.o 檔案2.o
          ar  -dv  libname.a  檔案1.o  檔案2.o         //刪除靜態庫libname.a中的檔案1.o 檔案2.o時詢問
          ar  -xv  libname.a  檔案1.o  檔案2.o          //把靜態庫libname.a中的檔案1.o 檔案2.o提取出來

    2.靜態庫的使用 : 全域性變數和函式 
          gcc  -o  file  file.c -L. lname

           -o  file 是編譯後的重新命名 

           -L. 表示是當前目錄(有小數點不能忘)

           lname表示是連線到靜態庫

實戰練習 :

編寫加減乘除的函式,並新增到自己建立的靜態庫中在main函式的編譯過程中呼叫靜態庫的函式且輸出結果.







二. 動態庫

         1. 動態庫的建立 
              gcc  -shared  -fPIC  -o  庫名.so  原始檔.c
          2. 動態庫的使用
              gcc  原始檔.c  ./  庫名.so  -o  可執行檔名