Mac'imde bazı x86 montaj programlarına dalmaya çalışıyorum, ancak bir yürütülebilir dosya üretmekte sorun yaşıyorum. Sorun bağlantı aşamasında görünüyor.Merhaba Dünya, Mac 0SX üzerinde x86 assembler kullanıyor
helloWorld.s:
.data
HelloWorldString:
.ascii "Hello World\n"
.text
.globl _start
_start:
# load all the arguments for write()
movl $4, %eax
movl $1, %ebx
movl $HelloWorldString, %ecx
movl $12, %edx
# raises software interrupt to call write()
int $0x80
# call exit()
movl $1, %eax
movl $0, %ebx
int $0x80
programı birleştirin:
as -o helloWorld.o helloWorld.s
Linki nesne dosyası:
ld -o helloWorld helloWorld.o
Bu noktada olsun hatadır:
ld: could not find entry point "start" (perhaps missing crt1.o) for inferred architecture x86_64
Yanlış/eksik yaptığım şeyler hakkında herhangi bir tavsiye çok yararlı olacaktır. teşekkürler
için çalışan bir çözümdür, ama start' 'için' _start' değiştirmeniz gerekir. – sidyll