我試圖在GNU/Linux上進行實時音頻處理的共享庫,因此性能很重要。我運行另一個程序,將其掛接到我的系統的音頻輸入和輸出,並使用callgrind進行配置文件。如何讓callgrind轉儲源代碼行信息?
看着KCacheGrind中的結果,我得到了關於什麼函數佔用了我大部分時間的很好的信息。但是,它不會讓我查看逐行信息,而是說我需要使用調試符號進行編譯並再次運行分析。
我正在分析的程序不是用調試符號編譯的,而是庫。我知道這一點,因爲有趣的是,cachegrind的源代碼註釋工作正常。
當我運行callgrind時,它表示默認是轉儲源代碼行信息,但它只是沒有這樣做。有什麼方法可以強制它,或者找出阻礙它的方法?
可能是一個愚蠢的問題,但你可以用調試符號重新編譯你的應用程序嗎? – 2010-05-30 05:39:51