跳至內容

Ldd (Unix)

維基百科,自由的百科全書

LddList Dynamic Dependencies,意譯為列出動態庫依賴關係)是一款在類Unix系統的實用工具,負責在命令行內輸出程序共享庫所依賴的函數庫[1]此工具由羅蘭·麥克格拉斯英語Roland McGrath烏爾里希·德雷佩爾英語Ulrich Drepper開發。[2] Ldd在指定的程序缺少部分函數庫的情況下將無法顯示結果。

安全性[編輯]

ldd是一個將指定程序作為參數傳入的命令行腳本,用戶不應該使用其打開不受信的函數庫。ldd的手冊頁建議用戶在打開不受信的二進制文件時使用objdumpgrep實用工具:

user@home ~/ $ objdump -p /path/program | grep NEEDED

用法[編輯]

user@home ~/ $ ldd /usr/bin/mp3blaster
        linux-vdso.so.1 =>  (0x00007fff8fdff000)
        libsidplay.so.1 => /usr/lib/libsidplay.so.1 (0x00007f4ea98ec000)
        libvorbisfile.so.3 => /usr/lib/libvorbisfile.so.3 (0x00007f4ea96e4000)
        libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x00007f4ea94b6000)
        libncurses.so.5 => /lib/libncurses.so.5 (0x00007f4ea9273000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f4ea9056000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f4ea8d41000)
        libm.so.6 => /lib/libm.so.6 (0x00007f4ea8abe000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f4ea88a7000)
        libc.so.6 => /lib/libc.so.6 (0x00007f4ea8523000)
        libogg.so.0 => /usr/lib/libogg.so.0 (0x00007f4ea831c000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007f4ea8118000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f4ea9b59000)

參考文獻[編輯]

  1. ^ ldd(1) – Linux man page. die.net. [December 28, 2011]. (原始內容存檔於2022-05-06). 
  2. ^ ldd Source Code. stuff.mit.edu. [March 26, 2014]. (原始內容存檔於2016-10-13).