5
Khi thực hiện ldd
trên một tệp, nó trả về một số hex trong dấu ngoặc đơn vor mỗi thư viện mà nó tìm thấy.số hex ldd trong ngoặc đơn
Ví dụ:
[email protected]> ldd wpa_supplicant
linux-gate.so.1 => (0xb779b000)
libnl.so.1 => /usr/lib/libnl.so.1 (0xb774d000)
libssl.so.1.0.0 => not found
libcrypto.so.1.0.0 => not found
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7748000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb75ed000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb75c7000)
/lib/ld-linux.so.2 (0xb779c000)
Nếu số hex không phải là một trong những thư viện thực thi một lần đã liên kết chống lại, một lỗi thông tin phiên bản có thể xảy ra.
Tôi có hai câu hỏi:
- đâu giá trị này có nguồn gốc?
- Làm cách nào để tìm ra giá trị hex nào mà tệp thực thi đang tìm kiếm? (tức là tài liệu ban đầu đã được liên kết)
Tôi không biết điều này chắc chắn, nhưng tôi không nghĩ rằng số hex có liên quan đến phiên bản thư viện - tôi nghĩ đó là địa chỉ (được đề xuất/dự kiến) trong đó thư viện đó sẽ được ánh xạ vào chương trình giải quyết không gian khi bạn thực hiện nó. Để xem phiên bản thư viện nào bạn cần, hãy thử 'ldd -v'. – twalberg
Nếu các giá trị này không thay đổi mỗi khi bạn chạy ldd, chỉ cần trích xuất hệ thống đó để băm nhỏ và sử dụng hệ thống Linux thực, an toàn và cập nhật. – BatchyX