我是汇编语言的新手,所以我有以下程序(test.asm):
section .data
hello: db 'Hello world!',10
helloLen: equ $-hello
section .text
global main
main:
mov eax,4
mov ebx,1
mov ecx,hello
mov edx,helloLen
int 80h
mov eax,1
mov ebx,0
int 80h
我使用NASM通过以下命令组装此程序:
nasm -f elf -o test.o test.asm
然后我通过以下命令使用GCC进行第二阶段(原谅我,我不知道这个阶段的名称是什么):
gcc -o test test.o
运行最后一个命令后,CMD中出现以下错误:
E:/码块/ MinGW的/ bin中/../ LIB / GCC /的mingw32 / 4.9.2 /../../../ libmingw32.a(main.o),此:main.c中:(文本。 .startup + 0xa7):未定义引用`WinMain @ 16' collect2.exe:错误:ld返回1退出状态
我知道问题与入口点有关,但我的操作系统是Windows 10 64位。
任何人都知道如何解决这个问题?