Linkowanie programu napisanego w Assembly pod Windowsem 10 64-bit

0

Cześć wszystkim

Od początku mojej "kariery" we wszelkiego rodzaju Assemblerach pisałem programy pod Linuxa. Dziś chciałem przejść na Windowsa,ale nie mogę przejść z rozszerzenia .asm na .exe...
Czy ktoś wie co tutaj jest nie tak? Oto komendy, które wpisywałem w konsolę.

nasm -f win64 scanf_with_if_asm.asm -o scanf_asm.o

Przejście z kodu Assemblera do kodu maszynowego nie generuje błędu, ale z linkowaniem to już inna sprawa.

GCC

gcc scanf_asm.o -o scanf.exe
scanf_asm.o: file not recognized: File format not recognized
collect2.exe: error: ld returned 1 exit status

ld

ld scanf_asm.o -o scanf.exe
scanf_asm.o: file not recognized: File format not recognized

Kolejna próba, ale tym razem z utworzonym domyślnie plikiem .obj

nasm -f win64 scanf_with_if_asm.asm

GCC

gcc scanf_with_if_asm.obj -o scanf_asm.exe
scanf_with_if_asm.obj: file not recognized: File format not recognized
collect2.exe: error: ld returned 1 exit status

ld

ld scanf_with_if_asm.obj -o scanf_asm.exe
scanf_with_if_asm.obj: file not recognized: File format not recognized

Oczywiście szukałem informacji na internecie, ale nic nie znalazłem dlatego jestem zmuszony zwrócić się do Was o pomoc, ponieważ nie mam pojęcia o co może chodzić. Będę wdzięczny za pomoc!

0

Spróbuj dodać przy wywołaniu GCC opcję -m64.
Ewentualnie możesz użyć linkera GoLink: http://www.godevtool.com/Golink.zip

1 użytkowników online, w tym zalogowanych: 0, gości: 1