I have a simple assembly file main.s which contains:
mysymbol1=1234
I assemble it into an object file using the following command:
$ arm-none-eabi-as main.s -o main.o
Now I check the symbol table
$ arm-none-eabi-objdump -t main.o
main.o: file format elf32-littlearm
SYMBOL TABLE:
00000000 l d .text 00000000 .text
00000000 l d .data 00000000 .data
00000000 l d .bss 00000000 .bss
000004d2 l *ABS* 00000000 mysymbol1
00000000 l d .ARM.attributes 00000000 .ARM.attributes
I note that the d indicates that there are debug symbols included so I run:
$ arm-none-eabi-strip --strip-debug main.o
Re-running objdump shows that the debug symbols have not been removed, although they have been reordered:
$ arm-none-eabi-objdump -t main.o
main.o: file format elf32-littlearm
SYMBOL TABLE:
000004d2 l *ABS* 00000000 mysymbol1
00000000 l d .text 00000000 .text
00000000 l d .data 00000000 .data
00000000 l d .bss 00000000 .bss
00000000 l d .ARM.attributes 00000000 .ARM.attributes
Why aren't the debug symbols removed?