Details
-
Bug
-
Resolution: Done
-
P2: Important
-
Qt Creator 2.8.1, Qt Creator 3.0.0
-
Toolchain : Android for arm / GCC 4.6 / Qt5.1.1, Qt5.2.0 / Debug - Fedora 19, Ubuntu 13.10 - arch X86_64
-
db5b9596398c401d043d20f81fd8b68b02ec5168 2363ea6df91d7a40e1dce72c7fe53a8486ebf1b0
Description
1/ Create a C++/Qt application project for Android with at least one dynamically linked library next to the main app module
2/ compile this project in debug mode and deploy it to an AVD or a 'real' device using QtCreator "debug run" button
3/ Set some breakpoint inside both main module and dynamic library module source code
=> GDB succesfully breaks at main module breakpoints but not for those from inside my dynamic library module
This is due to an incomplete 'set solib-search-path' inside gdb session (Which lack the path to my additional module binary):
set solib-search-path /home/myaccount/myproject/build-myproject_for_arm_GCC_4_6_Qt_5_1_1-Debug/mainmodule
:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/platforms/android
:/opt/Qt5.1.1/5.1.1/android_armv7/lib
:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/generic
:/opt/Qt5.1.1/5.1.1/android_armv7/imports/Qt/labs/shaders:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/imageformats:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/sensorgestures:/opt/Qt5.1.1/5.1.1/android_armv7/imports/Qt/labs/gestures:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/accessible:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/qml1tooling:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/qmltooling:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/sqldrivers:/opt/Qt5.1.1/5.1.1/android_armv7/imports/Qt/labs/particles:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/sensors:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/bearer:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/platforms:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/playlistformats:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/mediaservice:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/iconengines:/opt/Qt5.1.1/5.1.1/android_armv7/imports/Qt/labs/folderlistmodel
If I manually correct this commands inside QtCreator gdb session windows, by simply adding the path to my additional dynamic library (like this) :
set solib-search-path /home/myaccount/myproject/build-myproject_for_arm_GCC_4_6_Qt_5_1_1-Debug/mainmodule
:/home/myaccount/myproject/build-myproject_for_arm_GCC_4_6_Qt_5_1_1-Debug/additionnalmodule
:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/platforms/android
:/opt/Qt5.1.1/5.1.1/android_armv7/lib
:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/generic
:/opt/Qt5.1.1/5.1.1/android_armv7/imports/Qt/labs/shaders:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/imageformats:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/sensorgestures:/opt/Qt5.1.1/5.1.1/android_armv7/imports/Qt/labs/gestures:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/accessible:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/qml1tooling:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/qmltooling:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/sqldrivers:/opt/Qt5.1.1/5.1.1/android_armv7/imports/Qt/labs/particles:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/sensors:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/bearer:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/platforms:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/playlistformats:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/mediaservice:/opt/Qt5.1.1/5.1.1/android_armv7/plugins/iconengines:/opt/Qt5.1.1/5.1.1/android_armv7/imports/Qt/labs/folderlistmodel
And if I re-set manually my breakpoints located inside my additional dynamic library source code:
-break-insert -f "\"additionalmodule.cpp\":15"
Then gdb normally breaks at them