我有一個源文件shared_lib_test.c其中有象下面這樣一些代碼:如何在共享庫中的確切行號上設置斷點?
10 void test_function(void)
11 {
12 do_me();
13 skip_me();
14 return;
15 }
我想使用gdb跳過13行,我應該怎麼辦呢?這個函數屬於共享庫而不是二進制文件。
如果這個函數屬於二進制的話,我可以使用下面的命令來做到這一點:
b shared_lib_test.c:13
commands 1
jump 14
continue
end
但由於它屬於共享庫,我不能設置的確切行號一個破發點源文件,我嘗試'b test_function +2',但它似乎是非法的gdb。
嘗試在共享庫上使用b fileName.cpp:lineNumber而不是使用函數名稱。它必須打破。然後你可以使用通常的指令集。爲什麼你要在功能上設置斷點以防共享庫? –
感謝您的評論,我這樣做的原因是我想節省時間更改共享庫內的邏輯而不編譯它。 – user1726366