我可以只显示反汇编代码和 .bss 部分的符号吗?

Can I display disassembly code along with symbols from the .bss section only?

我想 avr-objdump 显示来自 avr-elf 二进制文件的反汇编代码,还包括符号,但仅包含来自 .bss 部分的符号,如下所示:

SYMBOL TABLE:
00800100 l    d  .bss   00000000 .bss
00800102 u     O .bss   00000001 cqueue<drv::uart0>::ptr
00800101 u     O .bss   00000001 cqueue<drv::uart1>::ptr
...

00000000 <__vectors>:
   0:       78 c0           rjmp    .+240           ; 0xf2 <__ctors_end>
   4:       b2 c0           rjmp    .+356           ; 0x16a <__bad_interrupt>
   8:       b0 c0           rjmp    .+352           ; 0x16a <__bad_interrupt>
   c:       ae c0           rjmp    .+348           ; 0x16a <__bad_interrupt>
  10:       ac c0           rjmp    .+344           ; 0x16a <__bad_interrupt>
  14:       aa c0           rjmp    .+340           ; 0x16a <__bad_interrupt>
  18:       a8 c0           rjmp    .+336           ; 0x16a <__bad_interrupt>
  1c:       a6 c0           rjmp    .+332           ; 0x16a <__bad_interrupt>
  20:       a4 c0           rjmp    .+328           ; 0x16a <__bad_interrupt>
  24:       a2 c0           rjmp    .+324           ; 0x16a <__bad_interrupt>

...

能做到吗?

到目前为止,我所有的尝试都导致要么显示 .bss 部分但根本没有反汇编,要么显示所有部分的所有内容、代码和所有符号...

根据您的 shell,您只需调用 avr-objdump 两次即可得到一个综合输出:

(avr-objdump <symbols-from-bss>; avr-objdump <disassembly>)