We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi,
This is is what I've discovered, and I am hoping it helps others:
When we upped the C++ std support from 11 to 17 with the GCC option -std=gnu++17, both DS5 (all versions) and Development Studio (v2021.0) failed while loading symbols from our ELF.
We're using a Xilinx-supplied gcc cross compiler (for Cortex A9), version:
make-C:\dev\akd\trunk1\make>arm-none-eabi-g++ --versionarm-none-eabi-g++ (Linaro GCC 7.3-2018.04-rc3) 7.3.1 20180314
The fix is to add the following options to the g++ compiler: -g -gstrict-dwarf -gdwarf-3
Don't forget to do a clean make.
Best,Sri
Hi Sri
Thanks for sharing :)
The Debuggers of DS-5 and Arm Development Studio supports standard DWARF debug information up to DWARF4.
Maybe the compiler was originally generating something in its DWARF that was non-standard (which the Debugger didn't understand), but which was resolved after switching to "-gstrict-dwarf -gdwarf-3".
It might be worth trying a more recent version of GCC, to see if the behaviour has changed.
Thanks again for sharing.
Stephen
Hi Stephen,
Thanks, I did verify that GCC+DS-5 works with gdwarf-4.
We're due for an upgrade of our tools, so I will try with a later version of GCC to see if it works without adding the "strict" behavior.
Best,
Sri