彙編共享庫

2021-10-20 21:06:17 字數 1391 閱讀 5573

生成命令:

ld helloworld-lib.o -o helloworld-lib.out -dynamic-linker /lib/ld-linux.so.

2-lc -m elf_i386

使用ldd檢視鏈結檔案位置

ldd .

/helloworld-lib

輸出: linux-gate.so.1(

0xf7fb8000

) libc.so.6=

>

/lib32/libc.so.6(

0xf7dbf000

)/lib/ld-linux.so.2(

0xf7fb9000

)

原型
int

# 將.o 檔案鏈結為共享庫

ld -shared write-record.o read-record.o -o librecord.so

# 動態鏈結到這個庫

ld write-records.o -o write-records.out -l .

-dynamic-linker /lib/ld-linux.so.

2-lrecord

# 執行時 設定環境變數

ld_library_path=

. export ld_library_path

# then

./write-records.out

共享庫 動態庫

動態庫的命名規則 lib 庫的名字 so libmyname.so 動態庫的建立和使用 共享庫 步驟一 生成對應的.o檔案 c o gcc fpic c c i include 生成與位置無關的.o檔案 fpic 與位置無關 步驟二 將生成的.o檔案打包成動態庫.so檔案 gcc shared o ...

QT Creator使用共享庫(一)建立共享庫

最近使用qt的移動裝置要呼叫個加密的.so,在前人 上折騰了n久也沒出來,終於自己照著幫助一步步作了一下,在此記下一筆。使用的工具 qt creator 測試環境 win 7,qt平台的外設 首先我們寫個共享的庫檔案 1.建立c 庫,選擇共享庫 2.在標頭檔案裡加上個方法,並在自動生成的類裡也加上個...

靜態庫和共享庫

建立和使用靜態庫 1 建立目錄 mkdir p test sub 2 在子目錄sub 下編寫hello.c和hello.h hello.c include include hello.h void hello hello.h include void hello 4 在主目錄test 下編寫main...