@Calmarius là chính xác, điều này xảy ra nếu bạn xem xét exe 32 bit, thậm chí không có thư viện 32 bit cơ bản.
Tôi đang cố gắng nâng cấp hệ thống của mình (bản cài đặt mới Ubuntu 16.04, từ ngày 12.04), tôi phải cài đặt dịch vụ 32 bit propitiatory cũ avserver, yêu cầu ia32-libs(không còn khả dụng). Điều này có nghĩa là cả hai dpkgvà apt-getkhông hài lòng (bất cứ điều gì tôi làm, nó sẽ nhắc tôi apt-get -f installvà nếu tôi chạy nó, nó khăng khăng tôi gỡ cài đặt gói dịch vụ) và dịch vụ của tôi sẽ không bắt đầu.
Để chứng minh rằng điều này không còn thiếu các thư viện 32 bit, tôi đã gắn hệ thống cũ của mình (Ubuntu 12.04, ia32-libsvà các thư viện 32 bit) /sda2. Đảm bảo /opt(chứa nhị phân 32 bit của tôi) được gắn vào /sda2/opt, tôi có thể chroot /sda2và lddsau đó chạy như dự định.
Để khắc phục điều này, tôi có thể đã cài đặt thủ công tất cả các gói thư viện phụ thuộc với: i386 (arch). Tuy nhiên, tôi quyết định thay vì cố gắng tìm ra sự phụ thuộc của mình là gì, tôi đã cài đặt rượu vang (phần lớn là 32 bit, và vì vậy cài đặt các thư viện cơ bản và tải thêm mà tôi không thực sự cần, nhưng tôi ổn với điều đó).
Để khắc phục dpkgvà apt-get, tôi đã chỉnh sửa /var/lib/dpkg/status, tìm gói cho dịch vụ của mình và xóa ia32-libs. Bây giờ dpkgvà apt-getđang hạnh phúc
Thế là xong, lddvui vẻ báo cáo: -
root@withnail:/opt/<service path># ldd avserver
linux-gate.so.1 => (0xf77a6000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf778f000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7772000)
libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xf776b000)
libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xf7752000)
libcrypt.so.1 => /lib/i386-linux-gnu/libcrypt.so.1 (0xf7720000)
libktssl.so.1.0.0 => /opt/<service path>/libktssl.so.1.0.0 (0xf76cb000)
libktcrypto.so.1.0.0 => /opt/<service path>/libktcrypto.so.1.0.0 (0xf756b000)
libktz.so.1 => /opt/<service path>/libktz.so.1 (0xf7558000)
librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xf754f000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf73d8000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7383000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf7366000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf71af000)
/lib/ld-linux.so.2 (0x565b1000)