YASM,为什么全局 - 外部链接不起作用

时间:2015-04-14 15:11:31

标签: undefined global nasm extern yasm

我是装配和使用yasm的新手,使用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招待员'

出了什么问题? 使全局函数可链接的必要条件是什么?

TIA

0 个答案:

没有答案