Debugging OCaml中的跟踪与调试
在OCaml中跟踪和调试使用什么 为了调试,我尝试了ocamldebug和Emacs插件 对于跟踪,我希望能够打印每个变量的数据构造函数。 使用Camlp4的示例如下所示:Debugging OCaml中的跟踪与调试,debugging,ocaml,trace,Debugging,Ocaml,Trace,在OCaml中跟踪和调试使用什么 为了调试,我尝试了ocamldebug和Emacs插件 对于跟踪,我希望能够打印每个变量的数据构造函数。 使用Camlp4的示例如下所示: 当您可以使用字节码时,ocamldebug工作正常 如果您想调试本机代码应用程序,有一个on-Mantis,它允许使用gdb逐行调试OCaml程序。此修补程序的部分内容应集成到下一版本的OCaml(3.13或4.00)中 然而,目前还没有打印OCaml值的方法,但另一个补丁即将出现,它使用GADT为任何类型定义通用打印机功能
当您可以使用字节码时,
ocamldebug
工作正常
如果您想调试本机代码应用程序,有一个on-Mantis,它允许使用gdb逐行调试OCaml程序。此修补程序的部分内容应集成到下一版本的OCaml(3.13或4.00)中
然而,目前还没有打印OCaml值的方法,但另一个补丁即将出现,它使用GADT为任何类型定义通用打印机功能。没有内置的方法打印用户定义类型的值,但有一些外部项目可以通过各种方式解决此问题。请参阅上一个SO问题页面:对于跟踪,顶层是最简单的方法,如果您可以在其中进行实验(对于数据结构调试来说效果很好,对于I/O来说效果不太好)。您好,截至2015年,gdb/lldb支持的状态如何?字节码文件是什么?我什么都试过了,
ocamldebug
说“不是字节码文件”。
type colour = Red | Green | Blue
let print_colour =
function
Red -> print_string "Red"
| Green -> print_string "Green"
| Blue -> print_string "Blue"