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_PATHthì sao?
Trong trường hợp đó, chương trình có thể tìm thấy thư viện, nhưng ldconfigsẽ 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.
lddphục vụ chính xác mục đích này.
LIBRARY_PATHbiến môi trường được tìm kiếm, ví dụ như gcctrình biên dịch. Biến LIBRARY_PATHmô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.