linux - nasm array1.o : file not recognized: File format not recognized on Linux 32

标签 linux assembly nasm

我现在正在使用 BACKTRACK 5,它几乎像 ubuntu,一个 debian 和它的 32 位,我安装了 nasm,我去看了 dr. paulcarter 的汇编语言教程并下载了他的示例程序 (Linux)。我进入示例程序所在的目录并执行以下指令

~/Desktop/linux-ex#nasm -f coff array1.asm

~/Desktop/linux-ex# gcc -o array1 array1.o array1c.c

array1.o: file not recognized: 文件格式无法识别 collect2: ld 返回 1 个退出状态

上面的执行指令已经在源文件注释中给出 我怎样才能让这些程序和以后我自己的程序工作?

最佳答案

Linux 内核支持各种二进制格式。 coff 是一个特别古老的版本,如果内核仍然完全支持它,它可能不会在现代发行版中启用。尝试 -f elf 而不是 -f coff

关于linux - nasm array1.o : file not recognized: File format not recognized on Linux 32,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27286092/

相关文章:

testing - 如何测试引导加载程序

linux - 有没有办法在linux中重命名大量文件

c++ - 在 C++ 中编写自定义编译命令时的快捷方式。

ios - 使用 clang 集成汇编器为 iOS 5.1 编译 NEON 时出错

c++ - 为什么我的程序集输出中有两个析构函数实现?

Linux NASM OUTSB 段错误

linux - NASM x86_64 在编写命令行参数时遇到问题,在 rax 中返回 -14

linux - 在加载驱动程序时使用 udev 规则执行命令

c++ - Linux绘制像素缓冲区

c++ - 与数学函数相比,条件指令的执行速度