微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

未绑定模块Stdlib

如何解决未绑定模块Stdlib

我正在尝试使用ocamlc构建代码,但是出现错误 User1 | 490000 User2 | 200000 User3 | 640000 User4 | 232000

Error: Unbound module Stdlib目录包括以下内容 /usr/lib/ocaml/ stdlib.a stdlib.cma stdlib.cxma stdlib.p.a

OCaml版本:4.05.0

解决方法

最近,标准库从Pervasives重命名为Stdlib。您的编译器来自更改之前。即4.05.0编译器具有Pervasives模块而没有Stdlib模块。您尝试编译的代码很可能来自更改之后。

通常没有理由提及标准库的名称,因为它是“普遍的”。因此,您可以尝试删除“ Stdlib”。无论您在哪里看到它。或者,您可以尝试将其重命名为“ Pervasives”。

但是,如果代码比4.05.0编译器更新得多,则可能会遇到其他问题。

,

Stdlib模块是在4.07.0中引入的。在此之前,它被称为Pervasives。看来您正在混合安装。

一些可能有助于解开它的命令:

  • which ocamlc会告诉您编译器的位置。
  • ocamlc -config会告诉您标准库在哪里。

强烈建议使用opam(OCaml程序包管理器)来管理OCaml安装,因为它允许您在多个安装之间进行切换,并允许您在发布最新版本的编译器后立即对其进行访问。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。