Wie kompilieren Sie und verknüpfen Sie eine 64-Bit-Windows-Assembler-Programm in LinuxCross-Compiler Windows 64 Bit Assembly auf Linux 64-Bit-
Ich weiß schon
nasm -f win64 generic_assembly.asm -o generic_output
Aber danach laufen kann ich nicht laufen nur
ld generic_output -o generic_executable.exe
und ich habe mit GoLink.exe mit Wein versucht, aber ich bin immer noch skeptisch, ob es tatsächlich
ArbeitsVielleicht könnte ich Mingw-w64 verwenden, aber ich habe keine Ahnung, wie das funktionieren würde
Jede Hilfe wäre zu schätzen Ich bin meist nur auf der Suche nach einem Linker, den ich von Linux ausführen kann, aber sonst würde ein Linker für Windows auch geschätzt werden.
Sie benötigen einen Windows Cross Compiler wie MinGW. Ihre Distribution kann bereits ein Paket mit vorgefertigten Paketen haben (Sie installieren es einfach über Ihren Paketmanager). Sobald Sie es installiert haben, können Sie das _LD_ aus dem Cross-Compiler ausführen - es wird wahrscheinlich 'x86_64-w64-mingw32-ld' genannt, der GCC-Cross-Compiler würde' x86_64-w64-mingw32-gcc' usw. heißen die Namenskonvention auf meinem Debian Jessie-System. –
Yup, ich würde nur 'x86_64-w64-mingw32-gcc' empfehlen, um' .obj' Dateien von Nasm in ausführbare Dateien zu verknüpfen, falls etwas nicht-offensichtliches 'ld' arg benötigt wird. (Verwenden Sie "-static" und/oder "-nostdlib" entsprechend). –