go gdb除錯引數

2021-08-15 04:11:59 字數 370 閱讀 9655

編譯時,如果編譯的結果需要gdb除錯則使用引數-

gcflags

「-n -l」,這樣可以忽略go

內部做的一些優化,聚合變數和函式等優化. 

go build

-gcflags

"-n -l",但是一定要注意是不是小寫的i,也不是大寫的i,是小寫的l,不然會出現奇怪的錯誤。

如果編譯的結果需要發布.則使用-ldflags 「-s」,可以去掉除錯資訊,減小大約一半的大小

go build -ldflags "-s"
刪除除錯符號:go build -ldflags 「-s -w」

關閉內聯優化:go build -gcflags 「-n -l」

gdb除錯帶引數程式

來自 方法一 gdb args program arg1 arg2 arg3 方法二 gdb program gdb break xx 下個斷點 gdb r arg1 arg2 arg3 方法三 gdb program gdb break xx 下個斷點 gdb set args arg1 arg2...

gdb除錯帶引數程式

一般來說gdb主要除錯的是c c 的程式。要除錯c c 的程式,首先在編譯時,我們必須要 把除錯資訊加到可執行檔案中。使用編譯 器 cc gcc g 的 g 引數可以做到這一點。如 cc g hello.c o hello g g hello.cpp o hello 如果沒有 g,你將看不見程式的函...

gdb除錯帶引數程式

一 問題 如果執行 gdb a.out 1 2 3 肯定會報錯。正確的做法是 gdb args a v1 v2 v3 gdb a,進入gdb後 r v1 v2 v3 gdb a,進入gdb後 設定引數set args v1 v2 v3 再直接 r。通過這三種方法,你就可以除錯帶引數的程式。二 例子 ...