我想在C代码中使用我的.asm函数。因此,我将fun.asm文件编译为fun.o并将该目标文件链接到CodeBlocks中。 (我认为链接是有效的,因为如果我删除.o文件,则CodeBlocks错误更改为“无此文件...”。) 这是我的代码的样子:
.asm代码:
SECTION .DATA
hello: db 'Hello world!',10
helloLen: equ $-hello
SECTION .TEXT
GLOBAL fun
fun:
say_hi:
mov eax,4 ; write()
mov ebx,1 ; STDOUT
mov ecx,hello
mov edx,helloLen
int 80h ; Interrupt
ret ; Return control
.c代码:
int main(int argc, char *argv[])
{
extern fun();
fun();
该代码有什么问题?我收到“对“有趣”的未定义引用”错误