我有一个 R 脚本,通常从带有参数的命令行启动:
./script.R --width=10
它使用 Rscript 作为解释器:
#!/usr/bin/env Rscript
不幸的是,当它使用 .C("compiled_function")
在 R 中执行我编译的 C 代码时,它给了我一个段错误。
那么如何运行附加了 gdb
调试器的 R
脚本呢?
Rscript
显然不知道 -d
选项。
我试过了
R -d gdb --vanilla --args --width=10 < script.R
但是它不起作用,因为它将 --width=10
传递给了调试器。什么是正确的选择?
也许我应该以交互方式启动R
:
$ R -d gdb --vanilla
但是我不知道如何获取
我的脚本并传递参数 (--width=10
)。
最佳答案
我认为一般的 GNU getopt 约定是使用 --
来表示剩余参数。所以尝试一下
R -d gdb --vanilla -- --width=10 < script.R
否则,将参数值硬连线到脚本或编译函数中。
关于debugging - 如何在附加 gdb 的情况下运行 R 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3618556/