我对ocaml很陌生,我发现了这个页面:https://caml.inria.fr/pub/docs/manual-ocaml/libref/
这一页是ocaml标准库吗?
当我用一行写程序时:
open Marshalocamlc可以建造它
当我写
open Clflagsocamlc给我错误:未绑定的模块
但是克莱旗和元帅都在这个页面的列表中。
当我尝试用opam安装Cl之旗时,opam告诉我找不到这个软件包
那么,如何使用包Cl之旗呢?
谢谢
发布于 2018-04-19 12:51:42
Cflags是一个模块,它属于compiler-libs库,一个供编译器开发人员和扩展编译器的人使用的库。所以很有可能,你找错了模块。
要使用它,需要将compiler-libs文件夹添加到搜索路径中,并指定提供此模块的库名。有些自动化工具会为您做到这一点,但是在低级别上(对于本机编译),这将是如下所示(假设您的代码在test.ml文件中):
ocamlopt -I +compiler-libs ocamlcommon.cmxa test.ml -o test发布于 2018-04-19 12:48:55
这不是标准库的索引,而是标准发行版提供的所有模块的索引,包括编译器的前端模块,Clflags是其中的一部分。
您可以获得标准库的模块这里的列表,以及始终打开的模块这里的“核心”列表。
除非您对编译器本身进行黑客攻击,否则Clflags并不是真正有用的,对于初学者来说,这并不是最好的任务。您可以在文档中找到如何使用它进行编译的这里:
ocamlc other options -I +compiler-libs ocamlcommon.cma other files但是,在您很好地掌握了OCaml及其编译器之前,您不会想要这样做。
https://stackoverflow.com/questions/49917121
复制相似问题