Re: gdb 執行時行號不照順序,跳來跳去??
※ 引述《tomhuang.bbs@bbs.sayya.org (阿培仔)》之銘言:
: 我最近在除錯我寫的一個程式,
: 除錯的過程中,發現 gdb 的行號不是照順序來,而是會前後亂跳,
: 雖然稍微前後跑,但整體上還是有照流程在執行...
: 我上網查了一下,這好像是因為下了最佳化 -Ox 的參數所致,
: 可是,我程式的編譯過程只用了 -O0 -g3 參數,但還是一樣會亂跳...
: 我的程式有用函式庫,如果連結的函式庫有最佳化,而自己寫的程式用 -O0 -g3,
: 是不是還是會亂跳呢?
: 請問大家,該如何解決比較好呢?
: 我的環境:
: MacOSX 10.4, Target: powerpc-apple-darwin8,
: gcc version 4.0.1 (Apple Computer, Inc. build 5367),
: GNU gdb 6.3.50-20050815 (Apple version gdb-573),
: 函式庫:ImageMagick 6.3.3 03/29/07 Q16 (以 MacPorts 安裝)
我是原作者,今天 Sayya BBS 好像沒開,上來 ptt 回文...
我現在知道為什麼會這樣了!!
原來是因為 Wand-config 的緣故!
編譯參數如下:
-O0 -g3 -Wall `Wand-config --cflags`
而後面的 `Wand-config --cflags` 原來是產生 -g -O2 -Wall -W -D_THREAD_SAFE
難怪會出問題了…
所以看起來,gcc 遇見相同選項但下不同參數,以後面的為優先..?
有空我再查查 gcc manual..
或是有高手要直接教一下 gcc 如何決定選項優先順序也不錯! ^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.232.78.47
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Programming 近期熱門文章
PTT數位生活區 即時熱門文章