原文:【轉】gdb如何調試沒有符號表(未加-g選項的編譯)的程序

轉自 http: blog.csdn.net yygydjkthh article details 很多時候,發行版的程序在編譯的時候都是沒有加上 g這個選項的,那么若是想調試一個程序,應該怎么辦呢 在加了 g選項時,是可以通過行號 函數名等進行斷點的設置的,但是沒有符號表的情況下,那么怎么來進行程序的斷點的設置並進行調試呢 這就要用到反匯編然后再對地址進行斷點的設置來進行調試,具體情況可參看以 ...

2017-01-05 21:35 0 2622 推薦指數:

查看詳情

使用GDB調試符號表程序分離后的可執行文件

環境:   Centos7.3、GCC4.8.5 適用場景:   由於調試信息比較大,通常將程序分離為可執行程序符號信息文件,只對外發布可執行程序,需要調試時再將符號信息文件附加。 一、創建可執行程序:   use_library.cpp ...

Tue Oct 09 16:54:00 CST 2018 0 2938
GDB如何使用符號表

  如果現在有同一個工程構建出的Debug版和Release版可執行文件projectD和projectR,如下的命令可以幫助你把Debug版中的符號表加到Release版中,實現對Release版的調試。   1、objcopy --only-keep-debug projectD ...

Thu Jul 26 20:57:00 CST 2012 1 10568
gdb 符號表 &信息 &工具

查看二進制文件的編譯器版本 strings info.o |grep GCCGCC: (crosstool-NG linaro-1.13.1-2012.02-20120222 - Linaro GCC 2012.02) 4.6.3 20120201 (prerelease) 查看依賴 ...

Tue Jan 14 01:47:00 CST 2020 0 832
編譯原理 符號表的代碼實現

//----------------------------符號表---------------------------------------//預定義struct snode;struct stable;//符號表結點struct snode{ string text; //符號名稱 ...

Wed May 31 23:04:00 CST 2017 0 1166
編譯器的符號表管理

內容提要 在我們寫的代碼中,有若干個變量,若干個函數;變量還會重名,還有值。編譯器卻總能找到我們指定的變量或函數,從不找錯人。在我看來,這是一個很神奇的功能。剖析一番,會發現”符號表“的身影。 符號表,存儲變量的值、函數。變量作用域依賴它,找到正確的變量也依賴它。 一起來看看符號表 ...

Thu Feb 17 02:02:00 CST 2022 2 651
GCC 符號表小結【

1) 如何生成不含符號表的目標文件 ? #一個方式是編譯的時候使用 選項 s roo ...

Mon Oct 08 23:39:00 CST 2018 0 1277
linux gdb 沒有符號表被讀取。請使用 "file" 命令。

使用gdb時遇到這個問題,剛開始接觸linux下使用gdb調試程序,其原因是生成的二進制可執行文件沒有使用-g選項。 gcc中-g選項是為了獲得有關調試信息,要用gdb進行調試,必須使用-g生成二進制可執行文件, gcc -g example.c -o example 這樣就可以了,用gdb ...

Wed Aug 22 06:43:00 CST 2012 2 9149
編譯原理系列之八 符號表

符號表 符號表用來體現作用域與可見性信息 符號表的作用: ① 收集符號屬性;(詞法分析) ② 上下文語義的合法性檢查的依據;(語法分析) ③ 作為目標代碼生成階段地址分配的依據;(語義分析) 符號表中語言符號可分為關鍵字(保留字)符號,操作符符號及標識符符號 符號表中的標識符一般 ...

Tue Dec 25 22:32:00 CST 2018 0 616
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM