对于学校项目,我使用的是Jane Street的Core和Async库。我正在尝试使用bind
Unix系统调用来调试问题,因此我运行ocamldebug myprogram
。引发异常(Unix.Unix_error
)时会停止,但在返回时我收到以下消息:
No source file for Async_parallel.Master_process.
这是引发错误的文件。是否可以指定opam构建我安装调试信息的软件包,以便我可以使用ocamldebug来检查它们?否则,我还能做些什么来解决这个问题?
提前致谢!
答案 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
表示错误的原因,不要忽视它。