ldconfig為文件/etc/ld.so.conf中命令行中指定的目錄中找到的最新共享庫創建必要的鏈接和緩存(供運行時鏈接程序ld.so使用 ),以及在受信任的目錄( / usr / lib和/ lib )中。 在確定哪些版本的鏈接已更新時, ldconfig會檢查它遇到的庫的頭文件和文件名。 掃描庫時, ldconfig會忽略符號鏈接。
ldconfig將根據C庫(如果有庫鏈接)來嘗試推斷ELF庫的類型(即,libc 5.x或libc 6.x(glibc)),因此,在製作動態庫時,明智地鏈接反對libc(使用-lc)。 ldconfig能夠將多個ABI類型的庫存儲到允許本地運行多個ABI的體系結構中的單個緩存中,如ia32 / ia64 / x86_64或sparc32 / sparc64。
一些現有的庫沒有足夠的信息來允許扣除它們的類型,因此/etc/ld.so.conf文件格式允許指定預期的類型。 這只用於那些我們無法解決的ELF庫。 格式是這樣的“dirname = TYPE”,其中類型可以是libc4,libc5或libc6。 (這種語法也適用於命令行)。 空間是不允許的。 另請參閱-p選項。
包含=的目錄名稱不再合法,除非它們也有預期的類型說明符。
ldconfig通常應該由超級用戶運行,因為它可能需要對某些根目錄和文件的寫權限。 如果使用-r選項來更改根目錄,只要您有足夠的權利訪問該目錄樹,則不必是超級用戶。
概要
ldconfig [選項...]
選項
-v --verbose
詳細模式。 打印當前版本號,掃描每個目錄的名稱以及創建的所有鏈接。
-n
只處理在命令行中指定的目錄。 不要處理受信任的目錄( / usr / lib和/ lib ),也不要處理/etc/ld.so.conf中指定的目錄。 意味著-N 。
-N
不要重建緩存。 除非指定-X ,鏈接仍會更新。
-X
不要更新鏈接。 除非還指定了-N ,否則緩存仍將重建。
-f conf
使用conf而不是/etc/ld.so.conf 。
-C緩存
使用緩存而不是/etc/ld.so.cache 。
-r根
更改並使用root作為根目錄。
-l
庫模式。 手動鏈接各個庫。 僅供專家使用。
-p --print-cache
打印存儲在當前緩存中的目錄和候選庫的列表。
-c --format = FORMAT
使用FORMAT作為緩存文件。 選擇是舊的,新的和compat(默認)。
- ? - 幫助 - 使用
打印使用信息。
-V - 版本
打印版本並退出。
例子
#/ sbin / ldconfig -v
將為共享二進製文件設置正確的鏈接並重建緩存。
#/ sbin / ldconfig -n / lib
以root身份安裝新的共享庫之後,會正確更新/ lib中的共享庫符號鏈接。
也可以看看
ldd (1)
重要提示:使用man命令( %man )查看特定計算機上的命令使用方式。