私は32ビットのアセンブリ言語で書かれたプログラムを持っています...今は64ビットのOSでコンパイルできません。私たちの学校ではそれらは特定のものであり、プログラムは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'