Ldconfig - Linux命令 - UNIX命令

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 )查看特定計算機上的命令使用方式。