2011-10-09 66 views
1

我剛剛開始使用gprof並試圖生成調用圖。 我使用cmake設置我的makefiles,並設置CMAKE_EXE_LINKER_FLAGS = -gp來啓用分析。我啓用的唯一cxx標誌是-g。gprof - 文件缺少調用圖數據

然後我只需在我的gmon.out文件中調用gprof。

生成的輸出文件只有一個扁平的配置文件,在這個配置文件中,調用,自己的ts /調用和總的ts /調用都是空的。

更重要的是,它不生成調用圖。 如果我嘗試在運行gprof來生成調用圖時顯式提供-q,它會顯示「文件缺少調用圖數據」。

我不知道我在這裏做錯了什麼,並希望得到這個固定的指針。

謝謝。

+0

我很想知道是否已經向您推薦gprof,以及給出的原因。 [你可以做得比gprof更好](http://stackoverflow.com/questions/1777556/alternatives-to-gprof/1779343#1779343)。 –

+0

gprof沒有被推薦給我。我只是在尋找一種快速而簡單的方法,gprof看起來像這樣。 我確實看過你的帖子。坦率地說,我只是有點懶惰地閱讀:p 然而我會花時間這樣做。 – Vaidy

+0

不同的配置文件可以完成不同的事情,而且它們並不完全相同。我在[Zoom](http://www.rotateright.com/)中沒有任何股份,但我認爲,正像個人檔案員去的那樣,它正在做正確的事情。也就是說,堆棧採樣(不僅僅是程序計數器),掛鐘時間(不僅僅是CPU時間未被阻止),還有通過代碼行(而不是函數/方法)報告百分比。 –

回答

0

用於分析的正確開關是-pg而不是-gp。這是你在做什麼?

+0

好吧..我會假設是交換機,字符可以互換。 儘管如此,我調換了它們,仍然看不到調用圖 – Vaidy

+0

在調用gprof之前是否執行過編譯好的程序? – Dennis

+0

另外,你的程序是否包含任何功能?如果沒有功能,'gprof'將不會輸出任何有用的內容... – Dennis

0

鏈接時可能缺少-pg?