2

对于一个学校项目,我正在使用 Jane Street 的 Core 和 Async 库。我正在尝试调试bindUnix 系统调用的问题,所以我运行ocamldebug myprogram. 这会在引发异常 ( Unix.Unix_error) 时停止,但在后退时我会收到以下消息:

No source file for Async_parallel.Master_process.

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

提前致谢!

4

1 回答 1

3

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

另一方面调试这类问题更容易和有效strace -e bind -f -ttT ./myprogram。还Unix_error带有错误的原因,不要忽视它。

于 2013-11-29T04:54:38.643 回答