0

我正在尝试在用 FASM 编写的程序中使用 GNU readline 库。这是我的汇编代码:

format elf64

public _start

extrn readline

section ".text" executable
_start:
    push prompt
    call readline
    jmp  _start

section ".data"
    prompt db ">> ", 0

然后我编译并链接它如下:

$ fasm test.asm
$ ld -lreadline test.o -o test

但是,当我尝试执行./testbash 时,会出现以下错误消息:

bash: ./test: No such file or directory

test可执行文件存在于目录中。怎么了?我没有libreadline正确链接图书馆吗?

4

1 回答 1

1

当我在 64 位系统上为 32 位编译代码时,这种情况发生在我身上一次。您必须安装一些额外的 32 位开发工具和库(如适当的 libc 变体),以便 32 位二进制文​​件也可以被识别为可执行文件。

于 2013-06-09T06:40:38.630 回答