在 OCaml 中打开模块时出现问题

Issue in opening a module in OCaml

我正在尝试使用 "Batteries" 模块,但是...它不起作用!

这是一个例子:

open Batteries;;

print_endline (dump [5;4;2]);;

我正在编译:opam exec ocamlc main.ml 错误消息是:

File "main.ml", line 1, characters 5-14:
1 | open Batteries;;
         ^^^^^^^^^
Error: Unbound module Batteries

并且电池模块似乎已安装:

$ opam install Batteries
[NOTE] Package batteries is already installed (current version is 3.0.0).

我错过了什么?

仅仅安装一个库是不够的,你必须告诉编译器你想要link它(编译器本身对opam一无所知)。 OCaml 有许多可用的编译和配置工具,这里只是构建使用电池的二进制文件的一种方法

ocamlbuild -pkg batteries main.native