@Calmarius doğrudur, 32 bitlik bir exe düşünürseniz, 32 bitlik temel kütüphaneler bile olmadan bu durum gerçekleşir.
Sistemimi yükseltmeye çalışıyorum (12.04'ten yeni bir Ubuntu 16.04 yüklemesi), eski bir propitiatory 32bit hizmeti yüklemem avserver
gerekiyor, bu gerekli ia32-libs
(artık mevcut değil). Bu araçlar hem dpkg
ve apt-get
mutsuz (ben ne yaparsam onu almamı isteyen apt-get -f install
ve bunu çalıştırırsanız, ben hizmet paketi kaldırmak ısrar) ve benim hizmet başlamaz.
Bunun 32bit kütüphanelerin eksik olduğunu kanıtlamak için, eski sistemimi (Ubuntu 12.04, ia32-libs
ve 32bit kütüphaneleri) taktım /sda2
. Sağlanması /opt
monte edilir (benim 32bit ikili içeren) /sda2/opt
Olabilirim chroot /sda2
ve ldd
sonra amaçlandığı gibi çalışır.
Bunu düzeltmek için, tüm bağımlı kütüphane paketlerini elle kurmuş olabilirim: i386 (arch). Ancak bağımlılıklarımın ne olduğunu anlamaya çalışmak yerine, şarap yükledim (çoğunlukla 32bit'tir ve bu yüzden temel kütüphaneleri ve gerçekten ihtiyacım olmayan bir yükü daha yükler, ancak bununla tamamım).
Düzeltmek için dpkg
ve apt-get
ben düzenlenebilir, /var/lib/dpkg/status
benim hizmet için paket bulma ve kaldırılan ia32-libs
. Şimdi dpkg
ve apt-get
mutlu
Yapılan, ldd
mutlulukla raporlar: -
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)