小编ami*_*awi的帖子

nasm:错误:二进制输出格式不支持外部引用

我正在尝试将程序集文件编译为目标文件。该汇编文件调用 ac 函数。但我遇到这个错误:二进制输出格式不支持外部引用

我在汇编文件第17行调用c函数

我尝试用这个命令编译它:

cpu/interrupt.o: cpu/interrupt.asm
        nasm $< -f bin -o $@
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题

[extern isr_handler]

; Common ISR code
isr_common_stub:
    ; 1. Save CPU state
    pusha ; Pushes edi,esi,ebp,esp,ebx,edx,ecx,eax
    mov ax, ds ; Lower 16-bits of eax = ds.
    push eax ; save the data segment descriptor
    mov ax, 0x10  ; kernel data segment descriptor
    mov ds, ax
    mov es, ax
    mov fs, ax
    mov gs, ax

    ; 2. Call C handler
    call isr_handler

    ; 3. Restore state
    pop …
Run Code Online (Sandbox Code Playgroud)

x86 assembly nasm object-files

1
推荐指数
1
解决办法
4553
查看次数

标签 统计

assembly ×1

nasm ×1

object-files ×1

x86 ×1