如何捕获Ncurses应用程序的堆栈跟踪?

时间:2016-11-03 02:29:51

标签: stack-trace ncurses

通常,从命令行运行应用程序时,如果出现问题,我会得到一个很好的打印跟踪。但是,由于我碰巧在Ncurses应用程序上工作,跟踪与正在运行的接口混合在一起,输出变得混乱。像这样:

Jumbledygook stack trace

具体来说,我正在开展这个项目:todo-curses

我正在运行应用程序作为Rake任务,所以我认为--trace选项会对我有所帮助,但我似乎无法弄明白。有没有一种很好的方法可以将 app 的输出记录到某个文件或其他内容而包含Ncurses接口呢?

1 个答案:

答案 0 :(得分:1)

这取决于应用程序:curses默认写入标准输出。如果您(作为curses应用程序的开发人员)使用newterm来初始化库而不是initscr,那么您可以告诉它将屏幕界面写入标准错误。

但是,对其他语言的curses绑定的开发人员通常会忽略newterm作为替代方案,只是为了简单起见。例如,github上显示的Ruby curses有这个缺陷。也许错误报告应该到期。

相关问题