我目前正在編寫一個R包,並通過R中的Rcpp
包使用編譯的C++代碼(Rcpp使像我這樣的非程序員更容易實現R和C++代碼的交互,恕我直言)。如何使用GDB在Emacs中調試R包(使用C代碼)?
我想使用gdb在我的C++程序中調試一些錯誤。我搜索了一下,主要發現了一些在emacs中調試R的資源,R-FAQ,一些郵件here,絕對是R的寫作R擴展手冊。
但是,我這樣做是第一次,我不能走得太遠。任何人都可以給我一些關於如何在emacs中調試R包(或帶有C++/C代碼的擴展)的指針。具體來說,我想利用ESS與R和gdb一起使用Emacs(就像R-FAQ談到的那樣)。
請注意,我確定如何使用gdb只使用 C或C++程序。但是我不能將這些知識轉化爲使用帶有R和擴展的gdb。
謝謝。不幸的是,我是新手在你提到的主題(由貝茨教授提問並由Maechler教授回答)中提出這個問題。 :-(。 – suncoolsu 2011-02-12 23:14:51
我的用法是從命令行輸入`R -d gdb`,然後用`r`告訴gdb(r)un R,`library(pkg)`,然後ctrl-c進入gdb,設置斷點等等,也就是說,沒有emacs。在我腦海中保留符號名稱和程序邏輯對我來說足夠具有挑戰性,而不必記住emacs/ESS層。 – 2011-02-12 23:24:11