1)命名規則
lib+name+.so
2)製作步驟
gcc -fpic -c ***.c:生成與位置無關的**(生成與位置無關的.o檔案)
gcc -shared -o lib***.so ***.o:將.o檔案打包成動態庫
3)發布和使用動態庫
示例:動態庫not find
ldd +可執行程式:檢視依賴共享庫的名字
解決辦法:
1)臨時測試(關閉終端後失效)
建立資料夾lib,將動態庫檔案放入lib中,執行如下命令:
2)永久生效
cdls -a
vi .bashrc
末尾新增:export ld_library_path=動態庫絕對路徑
3)永久生效
1.需要找到動態鏈結器的配置檔案
cd
cd /etc/
vi ld.so.conf
2.將動態庫的路徑寫到配置檔案中(末尾)
3.更新配置檔案
sudo ldconfig -v
優點:(1)執行程式體積小
(2)動態庫更新,不需要重新編譯程式(前提是函式的介面不變)
缺點:(1)發布程式的時候需將動態庫提供給使用者
(2)動態庫沒有被打包,載入速度相對較慢
Linux操作基礎學習(八)
1 systemd 系統初始化程式,系統開始的第乙個程序,pid為1 2 systemctl 命令 systemctl list units 列出當前系統服務的狀態 systemctl list unit files 列出服務的開機狀態 systemctl status sshd 檢視指定服務的狀態...
Linux入門 Linux基礎操作整理
一 幫助操作 1 補齊命令 tab 補齊命令 tab 2 檢索以x開頭的命令 2 幫助命令 man ls 檢視man手冊 info ls 檢視info手冊 ls help 檢視help手冊 二 簡單目錄結構 1 總體目錄結構 自菜鳥教程 詳見思維導圖 目錄結構.html 2 常用相對路徑表示 父目錄...
linux 動態庫的操作
在linux中可以動態載入庫,其使用方法如下 1.先生成乙個動態庫libtest.so test.c include include void test1 int no void test2 char str 編譯庫 gcc fpic shared o libtest.so test.c 這樣就可以...