靜態函數庫與動態函數庫區別、應用--ldconfig、ldd

來源:互聯網
上載者:User

靜態函數庫與動態函數庫區別、應用--ldconfig、ldd 1、函數庫靜態與動態區別:    a、靜態函數庫:副檔名為 .a,是把整個包括入程式裡的,程式會比較大,升級麻煩  www.2cto.com      b、動態函數庫:副檔名為 .so,連結的方式,靈活,程式小,主推 2、將動態函數庫放入記憶體裡提高速度:首先,我們必須要在 /etc/ld.so.conf 裡面寫下‘ 想要讀入快取記憶體當中的動態函式庫所在的目錄’,注意喔, 是目錄而不是檔案;接下來則是利用 ldconfig 這個執行檔將 /etc/ld.so.conf 的資料讀入快取當中;同時也將資料記錄一份在 /etc/ld.so.cache 這個檔案當中呐!  www.2cto.com  例子:假設我的 MySQL 資料庫函式庫在 /usr/lib/mysql 當中,如何讀進 cache ?[root@www ~]# vi /etc/ld.so.confinclude ld.so.conf.d/*.conf/usr/lib/mysql   <==這一行新增的啦! [root@www ~]# ldconfig  <==畫面上不會顯示任何的資訊,不要太緊張!正常的! [root@www ~]# ldconfig -p  <==列出目前有的所有函式庫資料內容 (在 /etc/ld.so.cache 內的資料!) 3、某個程式調用了什麼動態庫,某動態庫相關的其他庫是什麼:[root@www ~]# ldd [-vdr] [filename]選項與參數:-v :列出所有內容資訊;-d :重新將資料有遺失的 link 點秀出來!-r :將 ELF 有關的錯誤內容秀出來! 範例一:找出 /usr/bin/passwd 這個檔案的函式庫資料[root@www ~]# ldd /usr/bin/passwd....(前面省略)....        libaudit.so.0 => /lib/libaudit.so.0 (0x00494000)     <==SELinux        libselinux.so.1 => /lib/libselinux.so.1 (0x00101000) <==SELinux        libc.so.6 => /lib/libc.so.6 (0x00b99000)        libpam.so.0 => /lib/libpam.so.0 (0x004ab000)         <==PAM 模組....(底下省略)....# 我們前言的部分不是一直提到 passwd 有使用到 pam 的模組嗎!怎麼知道?# 利用 ldd 察看一下這個檔案,看到 libpam.so 了吧?這就是 pam 提供的函式庫 範例二:找出 /lib/libc.so.6 這個函式的相關其他函式庫![root@www ~]# ldd -v /lib/libc.so.6        /lib/ld-linux.so.2 (0x00ab3000)        linux-gate.so.1 =>  (0x00636000)         Version information:  <==使用 -v 選項,增加顯示其他版本資訊!        /lib/libc.so.6:                ld-linux.so.2 (GLIBC_PRIVATE) => /lib/ld-linux.so.2                ld-linux.so.2 (GLIBC_2.3) => /lib/ld-linux.so.2                ld-linux.so.2 (GLIBC_2.1) => /lib/ld-linux.so.2

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.