YASM, почему глобальные внешние ссылки не работают
Я новичок в сборке и использую y asm, с редактором ebe.
Теперь после первых шагов я хочу проверить глобальный / внешний механизм.
Поэтому я сделал 2 модуля:
actor.asm
extern greeter
section .text
global main
main:
push rbp
call greeter wrt ..plt
pop rbp
mov rax,0
ret
greeter.asm
extern printf
section .data
msg: db "Hello world", 0
fmt: db "%s", 10, 0
section .text
global greeter
type greeter function
size greeter greeter.end -greeter
greeter:
push rbp
mov rdi,fmt
mov rsi,msg
mov rax,0
call printf
pop rbp
mov rax,0
ret
.end:
Оба файла компилируются, и когда я запускаю первый, появляется следующее сообщение об ошибке:
/home/1/Öffentlich/EBE_Space/ext_glob_test/actor.o: в функции
main': /home/1/Öffentlich/EBE_Space/ext_glob_test/actor.asm:6: undefined reference to
привратник"
В чем дело? Что необходимо, чтобы сделать глобальную функцию связываемой?
ТИА