簡體   English   中英

GDB:附加屬於共享庫的源文件

[英]GDB: Attaching source files belonging to a shared library

所有,

我正在遠程運行GDB(主機上的客戶端,目標上運行的gdbserver)。 我想在共享庫中設置一個斷點。 共享庫位於我從中運行GDB的路徑的本地。 我看到調試器正在設置斷點:

目前沒有加載共享庫。 (gdb)b openapiClientRegister斷點1位於0x100211d4 (gdb)c繼續。

 Do you need "set solib-search-path" or "set sysroot"? Breakpoint 1, 0x100211d4 in openapiClientRegister@plt () (gdb) info shared From To Syms Read Shared Object Library No linux-vdso32.so.1 No /mnt/application/libproc_libs.so No **/mnt/application/libopenclt.so** 0x0ff46260 0x0ff51b54 Yes (*) /lib/libpthread.so.0 0x0ff1a8ac 0x0ff1ec70 Yes (*) /lib/librt.so.1 0x0fef5aa8 0x0fef6adc Yes (*) /lib/libdl.so.2 0x0fd90df4 0x0fe8b064 Yes (*) /lib/libc.so.6 No /lib/ld.so.1 (*): Shared library is missing debugging information. 

我可以看到該庫具有調試信息(以粗體顯示)。 運行該程序時,將命中斷點。 但是GDB無法遍歷代碼,因為它找不到包含該代碼的文件。 我嘗試通過“ directory”命令添加包含文件的源目錄,但還是沒有運氣。

您能指出我程序中可能出現的錯誤嗎? 我可能會缺少什么。

提前致謝。

編譯代碼諸如“ gcc -g” -g選項之類的調試符號將在已編譯文件中包含調試信息。 然后它將顯示符號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM