複習Linux ELF共享庫版本概念

2021-08-24 22:55:33 字數 706 閱讀 8002

soname for a shared library:

lib.so.

fully-qualified soname for a shared library:

/lib.so.

real name for a shared library:

lib.so...

linker name for a shared library:

lib.so

一般soname對應的是乙個符號鏈結,是在執行ldconfig時由其根據共享庫header中的soname域建立的。如果建立共享庫時未通過-wl,-soname,...指定其soname,則ldconfig不會為其建立對應的soname符號鏈結。linker name對應的符號鏈結主要用於開發鏈結使用,一般是建立乙個指向soname而不是real name的鏈結,以便減少版本更替時需要改變的鏈結數量(當然共享庫數量較少時指向soname或real name均可,系統軟體包也是兩種方式都有採用的例子)。

主要表明介面abi相容性,一般如果共享庫介面產生了非向前相容的更改就要公升級。

Git與共享版本庫之間互動

參考 新增遠端倉庫 git remote add origin git github.com stone927 helloworld.git stone927 使用者名稱 helloworld 倉庫名 推送至遠端倉庫 git push u origin master origin master表示指...

共享庫 動態庫

動態庫的命名規則 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.在標頭檔案裡加上個方法,並在自動生成的類裡也加上個...