没有创建gdb + nasm调试信息

cpo*_*el2 7 debugging assembly gdb nasm

我正在尝试调试我在Ubuntu中编写的一个小.asm文件.然而,我遇到了一个问题,我的符号表没有被加载,正在寻找一些帮助.

我正在编译我的程序如下.

nasm -f elf -g -F dwarf bs.asm
gcc -m32 -g bs.o -o bs
Run Code Online (Sandbox Code Playgroud)

我跑的时候产生可执行的bs

gdb bs 
Run Code Online (Sandbox Code Playgroud)

我收到一条消息说没有调试符号,当我尝试设置一个断点时

b main 
Run Code Online (Sandbox Code Playgroud)

它说功能没有定义,即使它在文件中,我可以使用./bs运行它

我阅读了一些帖子,建议在组装时添加-F矮人,但如果有人有任何见解这没有帮助我会非常感谢你的输入.

Pra*_*hal 11

使用以下命令组装文件: -

nasm -f elf -F dwarf -g file.asm
ld -m elf_i386 -o file file.o

然后使用gdb,


Bo *_*son 5

cpowel2 解决了他自己的问题:

已解决:以防万一其他人遇到同样的问题(网上似乎有大量帖子)我可以通过将文件的 .txt 部分更改为 .text 部分来解决该问题,并且 gdb 可以识别马上。