Giả sử tôi muốn kiểm tra nếu một thư viện được cài đặt và có thể sử dụng được bởi một chương trình. Tôi có thể sử dụng ldconfig -p | grep mylib
để tìm hiểu nếu nó được cài đặt trên hệ thống. Nhưng nếu thư viện chỉ được biết thông qua cài đặt LD_LIBRARY_PATH
thì sao?
Trong trường hợp đó, chương trình có thể tìm thấy thư viện, nhưng ldconfig
sẽ không. Làm cách nào để kiểm tra xem thư viện có nằm trong đường dẫn liên kết kết hợp không?
Tôi sẽ nói thêm rằng tôi đang tìm kiếm một giải pháp sẽ hoạt động ngay cả khi tôi không thực sự có chương trình trong tay (ví dụ: chương trình chưa được biên dịch), tôi chỉ muốn biết rằng một thư viện nào đó tồn tại trong ld
' đường dẫn s.
ldd
phục vụ chính xác mục đích này.
LIBRARY_PATH
biến môi trường được tìm kiếm, ví dụ như gcc
trình biên dịch. Biến LIBRARY_PATH
môi trường cũng có một danh sách các thư mục riêng biệt.
ldd <binary>
để kiểm tra xem tất cả các thư viện được liên kết có trong đường dẫn không. Có lẽ có một cách thanh lịch hơn.