【问题标题】:Enable debugging in opam packages在 opam 包中启用调试
【发布时间】:2013-11-28 16:14:59
【问题描述】:

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

No source file for Async_parallel.Master_process.

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

提前致谢!

【问题讨论】:

    标签: ocaml opam


    【解决方案1】:

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

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

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-15
    • 1970-01-01
    • 2015-09-27
    相关资源
    最近更新 更多