我正在使用Rcpp和RcppArmadillo从R运行c ++程序。我的操作系统是Windows 8.我使用cxx函数来编译我的代码(稍后我会直接创建一个包,但是现在我对如何制作一个包很无能为力)。问题是R在运行我的c ++代码时经常崩溃。必须存在一些分段错误,因为即使使用相同的种子,它也不会在同一地点完全崩溃。目前,我正在打印提示,但我觉得这不是调试程序的最有效方法。
所以我读了一些关于如何在R中调试c ++代码的内容,看来gdb是一个很好的方法。所以我下载了包含gdb for windows的mingwin32。当我使用gdb运行R时,它运行正常,我可以运行所有代码,但是当R crash gdb backtrace函数返回'no trace'时。我不知道为什么。我听人们说要在编译中添加选项-g -Oo,但是我使用cxxfunction编译我的c ++程序而且我不知道如何在R中手动编译东西。我也听说有些人谈论改变cxxflags但我真的不明白那是什么以及如何改变它。
所以我的问题是:
感谢您的帮助。