PDA

View Full Version : Qt Creator Distant debugging can't step into external debug libraries.



bouchebeu
22nd September 2014, 11:07
Hello everyone,

I'm using QtCreator under linux Ubuntu 14.04, and I cross compile my program to run on an ARM platform.

My program compilation and execution work correctly.

I use the remote debugging inside QtCreator and realize that it won't (can't) step into my own external libraries:
- When debugging step by step, I can't get inside my external libraries.
- When I set a fatal exception inside my library, and the exception is raised, the debugger stops in pt-raise.c, but can't show parent functions (they appear as '??' and the disassembler displays assembler code).


All of my code (main program and libraries) are built with the same debug settings (same kit in settings of QtCreator).
The selected build configuration is debug.
The created libraries are suffixed with the 'd' letter, and the command 'objdump --syms' shows all symbols inside my libraries.
If I remove the libraries from the ARM platform, the debugger doesn't start and tells me that it can't find the needed libraries.

*** Edit ***

Also, when I debug the code on my development machine, the debugger doesn't have any problem stepping into the external libraries code.

*** Edit ***

I'm stuck and don't have anymore idea; does this issue ring a bell ?


Thank you.

QT4T
4th September 2015, 15:37
Did you find the solution to your problem. I'm running into similar issue.

I have backend code and QT UI is attaching to it on the ARM processor. I have created the UI on the QT creator and deploying it on the ARM board. Now I'm trying to attach to the UI process, but it says Unable to find dynamic linker breakpoing function. GDB will be unable to debug shared library initializers and track explicitly loaded dynamic code.

hybr1D
11th May 2016, 09:28
Hi.
I have the same problem as bouchebeu. Remote debug of application works fine, but I cant step into my libraries. When I try it on my local PC, everything works fine but remote debug cant step into libraries. Can anyone help please?

Thanks.

creatron
4th January 2017, 19:45
copy the root file system to the host system, I used /opt/target/root. One needs at least /lib and /user directtories from the target
Add the following in the options in tools/options/debugger GDB(tab) Additional Startup commands

set sysroot /opt/target/root/
handle SIGILL pass nostop noprint

apply and try again
Note GDB should also moan on start-up, add the above and it might disappear

russkij
20th March 2017, 14:44
set sysroot /opt/target/root/


thanks, works fine with Qt 5.8!