2024-03-03 01:59 PM
I have been getting warnings similar to the following when I link with LinkLayer_BLE_Full_lib.a and stm32wba_ble_stack_full.a. output.axf is the executable elf file. objdump is from Ubuntu 23.
objdump -g 'output.axf' > 1.txt
objdump: Warning: Invalid length 0xc000000 in FDE at 0x30cad
The PDE problem causes a problem with Segger Ozone. It is unable to unwind the call stack and warns "ELF data section 'debug.frame' has an unexpected byte size".
I don't get the warnings when I use LinkLayer_BLE_Basic_lib.a and stm32wba_ble_stack_basic.a. Ozone doesn't have an unwinding problem with the basic versions.
Is there a known way to use LinkLayer_BLE_Full_lib.a and stm32wba_ble_stack_full.a without causing an invalid FDE.
I am using STM32Cube_FW_WBA_V1.2.0, Nucleo-WBA52CG, Ubuntu 23, and arm-gnu-toolchain-13.2.Rel1-x86_64-arm-none-eabi.
2024-03-03 03:12 PM
> objdump is from Ubuntu 23
Should use obdump and gdb from the toolchain (arm-none-eabi in this case). The object libraries (.a) should be compatible with the linker of the toolchain - please check that the libraries are for gcc and not Keil or something else.
2024-03-03 07:05 PM
I just used objdump from the toolchain and I got the similar warning:
~/arm-gnu-toolchain-13.2.Rel1-x86_64-arm-none-eabi/bin/arm-none-eabi-objdump -g 'output.axf' > 1.txt
~/arm-gnu-toolchain-13.2.Rel1-x86_64-arm-none-eabi/bin/arm-none-eabi-objdump: Warning: Invalid length 0xc000000 in FDE at 0x20635
~/arm-gnu-toolchain-13.2.Rel1-x86_64-arm-none-eabi/bin/arm-none-eabi-objdump: Warning: Unsupported or unknown Dwarf Call Frame Instruction number: 0x18
I am not using Keil. Do you have any suggestions?