我有用 32 位汇编语言编写的程序……现在我无法在 64 位操作系统上编译它。在我们学校,它们是特定的,程序必须以 32 位版本编写。这是我的程序:
bits 32
extern _printf
global _start
section .data
message db "Hello world!!", 10, 0
section .text
_start:
pushad
push dword message
call _printf
add esp, 4
popad
ret
任何想法?我已经尝试了很多方法来编译它。编译后的错误输出:
nasm -f elf64 vaja4.asm
ld vaja4.o -o vaja4
./vaja4
输出:
vaja4.o: In function `_start':
vaja4.asm:(.text+0x7): undefined reference to `_printf'