2011-09-03 178 views
2

我寫了一個小單元測試框架,它使用python動態加載共享庫並在其上調用測試方法。我能夠通過執行調用通過我的構建腳本單元測試:使用gdb調試動態加載的共享庫

make test_library 

製作然後產卵蟒蛇與調用我的測試方法的腳本。這很好,但我無法用GDB進行設置,所以我可以調用相同的make目標,但是當我的庫測試代碼到達時GDB會中斷。有關如何最好地去解決它的任何建議?這全部在linux上。

謝謝

+0

如果讓庫睡眠,可以使用GDB「附加」到現有進程。 – Flexo

+1

要回答我自己的問題,gdb可以很好地與動態加載的庫一起工作。您可以在加載任何符號之前設置斷點,一旦在共享庫中找到匹配符號,gdb就會執行正確的操作。我遇到的問題是我將make指定爲可執行文件,並且這是不正確的,因爲它實際上是加載我的庫的Python。一旦我糾正這一切只是工作。 – samwise

+0

是的,課程gdb作品使用共享庫查找!問題是,你是如何設定(而且可能是失敗)來設定所需的斷點?你還沒有告訴我們...... – paulsm4

回答