靜態庫與動態庫的建立和使用

2021-07-23 14:17:00 字數 550 閱讀 5324

一、靜態庫的建立:

(1)gcc  -c  原始檔.c ——》產生.o檔案

ar  rcs/rcd  靜態庫名(libname.a)  目標檔案1  目標檔案2

二、靜態庫的使用:

(2)gcc  -o  file  file.c  -l.  -lname

ar  -t  libname.a  列出庫中的目標檔案

ar  -d  libname.a     file.o 刪除庫中.o的目標檔案

ar  -d+v  libname.a  file.o 提示是否刪除或庫中是否有此檔案

ar  -x+v  libname.a  file.o 提取.o目標檔案

一、動態庫的建立:

(1)gcc  -shared  -fpic  -o  庫名.so  原始檔.c

gcc -fpic -c 原始檔.c

gcc -shared 目標檔案.o  libname.so

二、動態庫的使用:

(2) gcc  原始檔.c  ./  庫名.so  -o  可執行檔名

用虛擬機器演示如下:

gcc建立和使用靜態庫 動態庫

gcc建立和使用靜態庫 動態庫 下面以工程libtest為例說明gcc 建立和使用 靜態庫 動態庫的過程,libtest目錄結構和內容如圖1所示,其中三個檔案hello.h,hello.c和main.c的內容如下。libtest include hello.h ifdef hello h defin...

gcc建立和使用靜態庫 動態庫

下面以工程libtest為例說明gcc建立和使用靜態庫 動態庫的過程,libtest目錄結構和內容如圖1所示,其中三個檔案hello.h,hello.c和main.c的內容如下。圖1libtest include hello.h ifdef hello h define hello h void h...

靜態庫和動態庫的建立和使用

靜態庫 靜態庫是在程式執行之前就編譯到目標程式去了 優點 執行快 缺點 占用空間大 靜態庫的建立 生成xx.a檔案 1.gcc cal.c c 函式檔案 生成 o檔案 2.ar rcs libcalcul.a 需要生成的.a檔案 cal.o 一般用lib開頭,便於砍頭去尾 3.gcc calcula...