在opam包中启用调试

时间:2013-11-28 16:15:00

标签: ocaml opam

对于学校项目,我使用的是Jane Street的Core和Async库。我正在尝试使用bind Unix系统调用来调试问题,因此我运行ocamldebug myprogram。引发异常(Unix.Unix_error)时会停止,但在返回时我收到以下消息:

No source file for Async_parallel.Master_process.

这是引发错误的文件。是否可以指定opam构建我安装调试信息的软件包,以便我可以使用ocamldebug来检查它们?否则,我还能做些什么来解决这个问题?

提前致谢!

1 个答案:

答案 0 :(得分:3)

由于4.01 ocaml编译器将使用OCAMLPARAM环境变量来启用某些选项。尝试使用OCAMLPARAM="_,g" opam install ...运行。另请参阅https://github.com/ocaml/opam/issues/681

另一方面,使用strace -e bind -f -ttT ./myprogram调试此类问题会更​​加轻松有效。另外Unix_error表示错误的原因,不要忽视它。