我有用32位汇编语言编写的程序......现在我只是无法在64位操作系统上编译它。在我们学校他们是特定的,程序必须用32位版本编写。这里是我的程序:在64位ubuntu上编译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'
不应该是printf不是_printf? – iabdalkader
同样的错误:vaja4.o:在函数'start'中: vaja4.asm :(.text + 0x7):未定义的对'printf'的引用 – Klemenko