linux 動態庫的編譯和使用以及其函式說明

2021-09-23 14:44:15 字數 753 閱讀 4974

1,動態庫函式說明:

#include void *dlopen(const char *filename, int flag); //開啟動態庫,第乙個引數為路徑

char *dlerror(void);

//handle為dlopen函式的返回值,第二個引數是我們封裝的.so裡面的函式名字

void *dlsym(void *handle, const char *symbol);

int dlclose(void *handle);

2,我們了解了函式的定義和引數後,我們來了解一下這些函式的具體用法吧:

(1)我們首先定義乙個函式four.c,然後將該函式編譯封裝成.so檔案。

(2)接下倆我們定義main.c

#include #include #include //動態鏈結庫路徑

#define lib_c

linux 靜態庫與動態庫的編譯和使用

gcc o test.o test.c 將.c檔案編譯成.o ar xv libtest.a 靜態庫解包 ar rv libtest.a o 將.o檔案編譯成.a,用 o可以將所有.o檔案編譯成乙個.a gcc shared o test.so o 將.o檔案編譯成.so,用 o可以將所有.o檔案編...

Linux編譯動態鏈結庫和使用

1 編譯動態鏈結庫,將lib a.c和lib b.c編譯成動態庫 lib common.h ifndef lib common h define lib common h void liba printf void libb printf endiflib a.c include include l...

linux動態庫的編譯與使用

linux下的動態庫以.so為字尾,我也是初次在linux下使用動態庫,寫一點入門步驟,以便以後能方便使用。第一步 編寫linux程式庫 檔案1.動態庫介面檔案 動態庫介面檔案getmaxlen.h ifndef getmaxlen h define getmaxlen h int getmaxle...