自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

剖析使用Linux動(dòng)態(tài)庫(kù)應(yīng)注意的問題

運(yùn)維 系統(tǒng)運(yùn)維
你對(duì)操作系統(tǒng)了解么?現(xiàn)在很多人應(yīng)該了解微軟,其實(shí)現(xiàn)在Linux也越來(lái)越受到廣大程序員的喜歡。這里為你詳細(xì)介紹應(yīng)注意的使用Linux動(dòng)態(tài)庫(kù)應(yīng)注意的問題,為你在學(xué)習(xí)的使用Linux動(dòng)態(tài)庫(kù)應(yīng)注意的問題起一定的作用。

你對(duì)操作系統(tǒng)了解么?現(xiàn)在很多人應(yīng)該了解微軟,其實(shí)現(xiàn)在Linux也越來(lái)越受到廣大程序員的喜歡。這里為你詳細(xì)介紹應(yīng)注意的使用Linux動(dòng)態(tài)庫(kù)應(yīng)注意的問題,為你在學(xué)習(xí)的使用Linux動(dòng)態(tài)庫(kù)應(yīng)注意的問題起一定的作用。

1、無(wú)論是動(dòng)態(tài)庫(kù)的顯式調(diào)用還是隱式調(diào)用,都需要用

ldconfig工具將動(dòng)態(tài)庫(kù)的路徑加到系統(tǒng)庫(kù)列表中,否則運(yùn)行時(shí)會(huì)出錯(cuò)。

2、可以用ldd命令檢查程序都使用到哪些共享庫(kù)

ldd命令行用法如下:

ldd [--version] [-v|--verbose] [-d|--data-relocs] [-r|--function-relocs] [--help] FILE...

各選項(xiàng)說(shuō)明如下:

(1) --version : 此選項(xiàng)用于打印出ldd的版本號(hào).

(2) -v 或 --verbose : 此選項(xiàng)指示ldd輸出關(guān)于所依賴的動(dòng)態(tài)鏈接庫(kù)的盡可能詳細(xì)的信息.

(3) -d 或 --data-relocs : 此選項(xiàng)執(zhí)行重定位,并且顯示不存在的函數(shù).

(4) -r 或 --function-relocs : 此選項(xiàng)執(zhí)行數(shù)據(jù)對(duì)象與函數(shù)的重定位,同時(shí)報(bào)告不存在的對(duì)象.

(5) --help : 此選項(xiàng)用于打印出ldd的幫助信息.

我們一般用-v選項(xiàng).

現(xiàn)在看幾個(gè)實(shí)例

⑴用靜態(tài)庫(kù)連接時(shí)的結(jié)果

  1. #ldd main  
  2. libc.so.6 => /lib/tls/libc.so.6 (0xb74ad000)  
  3. /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0xb75eb000) 

可見使用靜態(tài)庫(kù)時(shí),由于庫(kù)已經(jīng)被編譯成程序的一部分,因此ldd的輸出中就只有用到的

系統(tǒng)庫(kù)。

⑵用動(dòng)態(tài)庫(kù)隱式連接時(shí)的結(jié)果

  1. libtest.so => /root/exercise/libtest.so (0xb75e2000)  
  2. libc.so.6 => /lib/tls/libc.so.6 (0xb74ab000)  
  3. /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0xb75eb000) 

可見隱式使用動(dòng)態(tài)庫(kù)時(shí),所有用到的動(dòng)態(tài)庫(kù)(包括系統(tǒng)和用戶的)都會(huì)被顯示出來(lái)。

⑶動(dòng)態(tài)庫(kù)顯式連接時(shí)的結(jié)果

  1. ldd main  
  2. libdl.so.2 => /lib/libdl.so.2 (0xb75e1000)  
  3. libc.so.6 => /lib/tls/libc.so.6 (0xb74aa000)  
  4. /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0xb75eb000) 

可見顯式使用動(dòng)態(tài)庫(kù)時(shí),程序中不再保存運(yùn)行時(shí)打開動(dòng)態(tài)庫(kù)的信息,只保留用到的系統(tǒng)庫(kù)的信息.

這個(gè)與使用靜態(tài)庫(kù)時(shí)的輸出是類似的.以上就是使用Linux動(dòng)態(tài)庫(kù)應(yīng)注意的問題。

責(zé)任編輯:小霞 來(lái)源: CSDN
相關(guān)推薦

2018-05-17 11:06:52

數(shù)據(jù)庫(kù)SQL Server設(shè)計(jì)方案

2010-04-27 16:54:11

Oracle RAC

2010-04-02 16:31:58

Oracle RAC

2013-05-27 11:11:41

綜合布線技術(shù)綜合布線施工步驟綜合布線

2010-09-07 11:00:42

2017-01-03 15:23:56

Android動(dòng)態(tài)加載SO庫(kù)

2011-11-09 14:28:43

SaaS云計(jì)算

2009-07-11 10:39:16

綜合布線設(shè)計(jì)實(shí)施

2010-04-09 09:46:38

Oracle RAC

2009-10-12 11:52:38

綜合布線系統(tǒng)測(cè)試

2012-09-18 13:01:23

SybaseLinux

2015-06-18 17:18:56

綜合布線環(huán)境保護(hù)

2014-08-26 10:29:31

2009-06-29 16:09:20

JSP編程

2009-07-28 14:30:07

單模光纖接續(xù)

2010-06-01 10:37:15

SVN合并

2022-11-09 08:50:39

Oracle數(shù)據(jù)庫(kù)PG類

2010-03-10 15:23:06

2020-03-27 22:18:55

JavaScript編程語(yǔ)言代碼

2010-09-25 13:51:46

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)