新聞中心
各Unix平臺(tái)動(dòng)態(tài)連接庫(kù)的編譯與使用是怎么樣的?使用dlsym函數(shù)調(diào)用動(dòng)態(tài)連接庫(kù)中的函數(shù).各Unix平臺(tái)動(dòng)態(tài)連接庫(kù)的編譯與使用是怎么樣的?使用GCC編譯器將目標(biāo)文件鏈接成動(dòng)態(tài)連接庫(kù)。
各Unix平臺(tái)動(dòng)態(tài)連接庫(kù)的編譯與使用是怎么樣的?

Unix平臺(tái)的動(dòng)態(tài)連接庫(kù)編譯與使用主要有以下幾個(gè)步驟:
1.編寫(xiě)源代碼:編寫(xiě)動(dòng)態(tài)連接庫(kù)的源代碼,使用C/C++語(yǔ)言編寫(xiě).
2.編譯源代碼:使用GCC編譯器編譯源代碼,生成目標(biāo)文件.
3.生成動(dòng)態(tài)連接庫(kù):使用GCC編譯器將目標(biāo)文件鏈接成動(dòng)態(tài)連接庫(kù),生成.so文件.
4.使用動(dòng)態(tài)連接庫(kù):將動(dòng)態(tài)連接庫(kù)文件復(fù)制到程序所在的目錄,在程序中使用dlOpen函數(shù)加載動(dòng)態(tài)連接庫(kù),使用dlsym函數(shù)調(diào)用動(dòng)態(tài)連接庫(kù)中的函數(shù).
各Unix平臺(tái)動(dòng)態(tài)連接庫(kù)的編譯與使用是怎么樣的?
Unix平臺(tái)的動(dòng)態(tài)連接庫(kù)編譯與使用主要有以下幾個(gè)步驟:
1.編寫(xiě)源代碼:編寫(xiě)動(dòng)態(tài)連接庫(kù)的源代碼,使用C/C++語(yǔ)言編寫(xiě).
2.編譯源代碼:使用GCC編譯器編譯源代碼,生成目標(biāo)文件.
3.生成動(dòng)態(tài)連接庫(kù):使用GCC編譯器將目標(biāo)文件鏈接成動(dòng)態(tài)連接庫(kù),生成.so文件.
4.使用動(dòng)態(tài)連接庫(kù):將動(dòng)態(tài)連接庫(kù)文件復(fù)制到程序所在的目錄,在程序中使用dlOpen函數(shù)加載動(dòng)態(tài)連接庫(kù),使用dlsym函數(shù)調(diào)用動(dòng)態(tài)連接庫(kù)中的函數(shù).
各Unix平臺(tái)動(dòng)態(tài)連接庫(kù)的編譯與使用是怎么樣的操作?
1.編譯動(dòng)態(tài)連接庫(kù):
在unix平臺(tái)上,使用GCC編譯器編譯動(dòng)態(tài)連接庫(kù),需要使用-fPIC參數(shù),以確保生成的代碼可以被動(dòng)態(tài)鏈接器使用.
例如:
GCC-fPIC-c mylib.c-o mylib.o
2.生成動(dòng)態(tài)連接庫(kù):
使用GCC的-Shared參數(shù),可以將編譯好的目標(biāo)文件生成動(dòng)態(tài)連接庫(kù)。
例如:
GCC-分享-o libmylib.so mylib.o
3.使用動(dòng)態(tài)連接庫(kù):
使用動(dòng)態(tài)連接庫(kù),需要在編譯時(shí)使用-l參數(shù),指定要鏈接的動(dòng)態(tài)連接庫(kù)名稱,并且需要指定動(dòng)態(tài)連接庫(kù)的路徑,使用-L參數(shù)指定.
例如:
GCC-o myprog mypro.c-L/usr/local/lib-lmylib
當(dāng)前名稱:各Unix平臺(tái)動(dòng)態(tài)連接庫(kù)的編譯與使用是怎么樣的
分享路徑:http://fisionsoft.com.cn/article/dhcgphc.html


咨詢
建站咨詢
