Ich versuche, dieser Anleitung zu folgen , um einen Ventrilo-Server auf meinem SheevaPlug einzurichten, auf dem Debian Armel ausgeführt wird. Auf dieser Seite wird angegeben, dass ich QEMU verwenden kann, um die für i386 erstellte Binärdatei auf meinem Armsystem auszuführen.
Das Setup für qemu besagt, dass ich qemu, qemu-user und qemu-libc-i386 installieren muss. Ich habe die ersten beiden in apt-get gefunden , aber qemu-libc-i386 ist kein Paket. Also habe ich versucht, qemu auszuführen, um den ventrilo-Server wie folgt auszuführen:
# qemu-i386 ./ventrilo_srv
/lib/ld-linux.so.2: No such file or directory
Es scheint, dass dies ld-linux.so.2
die i386-Version von dem ist, was ich in Armel als habe ld-linux.so.3
.
Ich weiß also, wie es mit einer anderen Linux-Distribution geht, aber es scheint, dass ich dies in Debian zum Laufen bringen sollte, wenn sie es in ihrer verrückten Distribution könnten. Gibt es ein Paket, das ich bekommen kann, das libc-i386 installiert, damit ich es ausführen kann (ähnlich wie ia32-libs für ein x64-System?) Ich habe versucht, das auch so.2
von einem anderen i386-System zu kopieren , und das hat mich nicht gebracht irgendwo.
Antworten:
Ja, Sie können x86-Binärdateien in QEmu ausführen, während QEmu auf einem ARM-Prozessor ausgeführt wird. Es wird sehr langsam sein, da QEmu die Software-Emulation des x86-Prozessors durchführt und Sie möglicherweise nicht genügend RAM haben, aber es kann funktionieren.
Das
qemu-user
Paket enthält die virtuelle Maschine selbst, dh einen Emulator eines x86-Prozessors und einiger Hardwaregeräte sowie einen Linux-Kernel, der auf dieser Harwdare ausgeführt wird. (Dasqemu-system
Paket enthält nur einen Emulator der Hardware, auf der Sie das Betriebssystem Ihrer Wahl installieren können.) Sie müssen die virtuelle Maschine weiterhin mit einer Laufzeitumgebung füllen, einschließlich/lib/ld-linux.so.2
(dem dynamischen Loader, der zum Ausführen einer dynamisch verknüpften ausführbaren Datei erforderlich ist). und eine Reihe von Bibliotheken. Dies ist, was dasqemu-libc-i386
Paket auf Optware bietet. Es ist etwas ähnlich wieia32-libs
auf amd64-Systemen, aber das ist viel einfacher, da ein amd64-Prozessor i386-Binärdateien nativ ausführen kann. Hier müssen sich die Bibliotheken in der x86-VM befinden.Sie können versuchen, das
qemu-libc-i386
Paket von Optware abzurufen. Das Optware-Paketformat ist dem von Debian sehr ähnlich, sodass Sie das ipk manuell in ein Deb konvertieren können:Ich kann nicht garantieren, dass dies funktioniert. Möglicherweise müssen Sie sicherstellen, dass die Versionen von QEmu übereinstimmen.
Wenn die Installation des geänderten ipk nicht funktioniert, versuchen Sie, den Inhalt auf Ihrem System zu reproduzieren. Entpacken Sie
data.tar.gz
irgendwo (oder holen Sie sich dieselben Dateien von einem anderen x86-System), sehen Sie, was daspostinst
Skriptcontrol.tar.gz
bewirkt, und geben Sie die richtigen Pfade anqemu-i386
.quelle