【发布时间】:2012-05-23 09:22:13
【问题描述】:
我编写了一个 32 位汇编文件,我想在 64 位 Linux 系统上编译它(并让它工作)。我已经安装了gcc-multilib 和lib32-glibc。
我尝试使用以下命令创建二进制文件:
nasm -f elf test.asm
ld -melf_i386 -o test -e _main test.o /usr/lib32/libc.so.6
_main 是入口点。文件 test 已创建,我对其进行 chmod:
chmod ugo+x ./test
但是,我无法打开它。我明白了:
bash: ./test: No such file or directory
我确定该文件存在,因为我可以在 vim 中打开它(并且我可以看到第一行写有 ELF)。这是怎么回事?
【问题讨论】:
标签: 32bit-64bit nasm ld