首页 > 解决方案 > 使用气体在 x86 中导入常量

问题描述

我在程序集中有以下两个文件:

# file.s
.globl _start
_start:
    mov $10, %edi
    mov $SYS_EXIT, %eax
    syscall
# utils.s
SYS_EXIT    = 60
SYS_WRITE   = 1
SYS_STDOUT  = 1

能够将这两个文件链接到可执行文件中需要什么。组装和链接我试过做:

$ as file.s -o file.o
$ as utils.s -o utils.o
$ ld utils.o file.o -o file 
# file.o: In function `_start':
# (.text+0x8): undefined reference to `SYS_EXIT'

这似乎只是意味着我没有正确导入文件/常量。这样做的正确方法是什么?

标签: assemblyx86x86-64gnu-assembler

解决方案


推荐阅读