Sie können das nicht direkt unter Linux auf x86_64 mit einem 32-Bit-Kernel tun. Sie benötigen einen 64-Bit-Kernel, um 64-Bit-Code ausführen zu können. (Hinweis:Kernel. Sie können ein 32-Bit-Userland auf einem 64-Bit-Kernel ausführen und Unterstützung für 64-Bit-Binärdateien installieren. Wie einfach dies ist, hängt von der Distribution ab. Beispiel hier für Debian.)
Einige Virtualisierungssoftware ist dazu in der Lage (mit Einschränkungen hinsichtlich des verwendeten CPU-Typs), und Emulatoren können dies auch. Aber um es nativ auszuführen, benötigen Sie einen 64-Bit-Kernel.
Da die meisten 64-Bit-Distributionen 32-Bit-Unterstützung haben (entweder standardmäßig oder installierbar), sollten Sie diese verwenden, wenn Sie sowohl 64-Bit- als auch 32-Bit-Binärdateien auf demselben Betriebssystem ausführen müssen.
Erweitern der Antwort von @Mat:
Ja, manche Virtualisierungssoftware kann das. Das größte zu bewältigende Hindernis besteht darin, dass in einer 32-Bit-Umgebung die 64-Bit-Funktionen der CPU nicht verfügbar sind und auch die Funktionen eines 64-Bit-Kernels nicht verfügbar sind. Es ist sogar so, wenn Ihre CPU hat 64-Bit-Unterstützung (seit etwa 2003 haben alle).
Ihre Frage besagt implizit, dass Sie die 64-Bit-App in Ihrer eigenen Systemumgebung ausführen möchten. Wenn es wirklich Ihre Absicht ist, schließt dies alle auf virtuellen Maschinen basierenden Lösungen aus. Das einzige, was mir noch bekannt ist, ist die Kernel-Emulation des qemu. Also:
qemu-x86_64 ./your_64bit_app
Es führt Ihre App auf Ihrem aktuellen System mit Ihrem aktuellen Kernel und Ihren aktuellen Umgebungsvariablen aus . Natürlich ist es nicht sehr schnell, es muss deine CPU emulieren.
Es kann nur Linux x86-64-Apps emulieren.