assembly - GDB 反汇编无法识别 ASM 标签,例如:_start
问题描述
我有一个汇编文件,我用这个命令组装和链接:
$ nasm -f elf -F dwarf -g -o FILENAME.o FILENAME.asm
$ ld -o FILENAME FILENAME.o
如您所见,我添加了-g
因此 nasm 生成调试符号。文件格式是这样的:
section .code:
global _start
_start:
ASM HERE
ANOTHER_LABEL:
ASM HERE
YET_ANOTHER_LABEL:
ASM HERE
当我启动gdb -q FILENAME
并运行文件(run
)后,我尝试_start
通过disassemble _start
它反汇编给我这个错误:
'_start' has unknown type; cast it to its declared type
_start
当我尝试反汇编任何其他标签名称(ANOTHER_LABEL
或)时
,它给了我相同的错误(更改YET_ANOTHER_LABEL
)。此外,当我只键入时disassemble
,它只会给我第一个标签的反汇编(从_start
开始到开始ANOTHER_LABEL
)。我该如何解决这个错误?
解决方案
推荐阅读
- html - 您如何使图像准确地跨越 eBay 的描述字段的宽度?(无水平滚动)
- python - 显示图像的文件名 Python imshow
- c++ - 我的 c++ 程序似乎没有评估字符串和我拥有但使用 getline 输入的变量之间的比较
- python-3.x - 我们可以将 python 32 位用于 Microsoft 视觉代码 64 位吗?
- mysql - 使用 django 左连接到最新行
- firebase - 无法在颤动中获取令牌ID
- javascript - 如何从 javascript 数组调用地图功能
- java - 安卓:java.lang.ClassCastException
- r - 使用 R 中的 ggplot 从两个数据框中获取箱线图和双 y 轴线
- c# - Linq 内同一列上的多个条件