@Calmarius ist korrekt. Dies geschieht, wenn Sie eine 32-Bit-Exe ohne grundlegende 32-Bit-Bibliotheken in Betracht ziehen.
Ich versuche, mein System zu aktualisieren (eine Neuinstallation von Ubuntu 16.04 von 12.04). Ich muss einen alten versöhnenden 32-Bit-Dienst installieren avserver, der dies erfordert ia32-libs(nicht mehr verfügbar). Dies bedeutet beides dpkgund apt-getist unglücklich (was auch immer ich tue, es fordert mich dazu auf apt-get -f install, und wenn ich das ausführe, besteht es darauf, dass ich das Servicepaket deinstalliere), und mein Service wird nicht gestartet.
Um zu beweisen, dass dies auf fehlende 32-Bit-Bibliotheken zurückzuführen ist, habe ich mein altes System (Ubuntu 12.04 mit ia32-libsund 32-Bit-Bibliotheken) gemountet /sda2. Wenn /optich sicher /sda2/optbin, dass (mit meiner 32-Bit-Binärdatei) eingebunden ist , kann ich chroot /sda2und kann ldddann wie vorgesehen ausgeführt werden.
Um dies zu beheben, hätte ich alle abhängigen Bibliothekspakete manuell installieren können mit: i386 (arch). Ich habe mich jedoch entschieden, anstatt herauszufinden, was meine Abhängigkeiten waren, Wein zu installieren (der meistens 32-Bit ist, und so die Basisbibliotheken und eine Menge mehr zu installieren, die ich nicht wirklich brauche, aber damit bin ich einverstanden).
Zum Reparieren dpkgund apt-getBearbeiten habe /var/lib/dpkg/statusich das Paket für meinen Dienst gefunden und entfernt ia32-libs. Jetzt dpkgund apt-getsind glücklich
Das getan, lddberichtet glücklich: -
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)