2011-11-03 1003 views

回答

3

生成gdb的調試信息的常用方法是將-g傳遞給gccg++編譯器(也在鏈接時)。

查看Cmake FAQ瞭解如何獲取可調試的可執行文件。

+0

我只想要符號表是可能的嗎? –

+1

這可能是可能的,但它不是'cmake'特定的問題。我認爲它們是一些Linux實用程序(可能與binutils相關)從ELF可執行文件中提取調試信息,但我從未使用它們。 http://www.moythreads.com/wordpress/2009/08/31/debugging-information-in-separate-files/ –

+2

「閱讀常見問題」通常不是正確的答案,因此... –

70

此行添加到文件的CMakeLists.txt

set(CMAKE_BUILD_TYPE Debug) 
+3

奧卡姆剃刀又贏了。 –

40

編譯在Release模式優化的,但加入的調試符號,用於分析有用:

cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ... 

或與NO編譯優化和添加調試符號:

cmake -DCMAKE_BUILD_TYPE=Debug ...