Để tìm những gì nó cần trực tiếp:
readelf -d APP | grep NEEDED
ldd
như đã đề cập ở nơi khác sẽ hiển thị tất cả các lib trực tiếp và gián tiếp - mọi thứ nó cần trong thời gian chạy. Đây có thể không phải là một danh sách đầy đủ, vì bạn có thể tự động mở mọi thứ với dlopen (), nhưng điều này sẽ hoạt động 99% thời gian.
ld và libtool được sử dụng tại thời gian biên dịch / liên kết. Chúng không hữu ích khi bạn có một ứng dụng.
EDIT Tôi có thể thấy bằng các câu trả lời sau mà bạn đã hỏi về OSX, nhưng tôi muốn thêm vào câu trả lời của mình trên các công cụ Linux:
Một điều tôi quên đề cập, cách đây khá lâu; bạn hỏi về các phiên bản. Không ldd
phải cũng readelf
sẽ không trả lời câu hỏi "phiên bản nào". Họ sẽ cho bạn biết tên tệp của thư viện mà bạn đang tìm kiếm và quy ước đặt tên có thể có một số thông tin phiên bản, nhưng không có gì bắt buộc điều này. Các biểu tượng có thể được phiên bản, và bạn sẽ phải thực hiện nhiều hơn về cấp độ thấp hơn nm
để thấy những biểu tượng này,