我目前正在尝试编译程序集中的基本程序并让它运行。这是我目前的代码:
section .text
global_start
_start:
mov edx, len
mov ecx, msg
mov ebx, 1
mov eax, 4
int 0x80
mov eax, 1
int 0x80
section .data
msg db 'Hello world!', 0xa
len equ $ - msg
我正在使用yasm来汇编代码。我这样做是通过进入Ubuntu终端并键入:
yasm -f elf64 -o firstProgram.o firstProgram.asm
ld -d -o firstProgram firstProgram.o
./first
然而,在我输入./first之前,我收到此错误:
ld: warning: cannot find entry symbol _start; defaulting to 000000040080.
(上述数字可能缺少零或两个)。我出错的任何想法?