Đối với câu hỏi này, tôi sẽ sử dụng một ví dụ cụ thể, nhưng thực sự điều này khái quát cho hầu hết mọi nhị phân trên linux mà dường như không thể tìm thấy các thư viện phụ thuộc của nó. Vì vậy, tôi có một chương trình sẽ không chạy vì thiếu các thư viện:
./cart5: error while loading shared libraries: libcorona-1.0.2.so: cannot open shared object file: No such file or directory
ldd làm sáng tỏ vấn đề:
linux-vdso.so.1 => (0x00007fff18b01000)
libcorona-1.0.2.so => not found
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.3/libstdc++.so.6 (0x00007f0975830000)
libm.so.6 => /lib/libm.so.6 (0x00007f09755af000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f0975399000)
libc.so.6 => /lib/libc.so.6 (0x00007f0975040000)
libz.so.1 => /lib/libz.so.1 (0x00007f0974e2b000)
/lib64/ld-linux-x86-64.so.2 (0x00007f0975b36000)
Tuy nhiên, corona được cài đặt:
oliver@human$ find / -name libcorona-1.0.2.so 2> /dev/null
/usr/local/lib64/libcorona-1.0.2.so
/home/oliver/installed/corona-1.0.2/src/.libs/libcorona-1.0.2.so
Làm thế nào để tôi nói nhị phân nơi tìm thư viện "mất tích"?