首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的ocaml程序找不到模块cl之旗?

为什么我的ocaml程序找不到模块cl之旗?
EN

Stack Overflow用户
提问于 2018-04-19 09:11:47
回答 2查看 458关注 0票数 1

我对ocaml很陌生,我发现了这个页面:https://caml.inria.fr/pub/docs/manual-ocaml/libref/

这一页是ocaml标准库吗?

当我用一行写程序时:

代码语言:javascript
复制
open Marshal

ocamlc可以建造它

当我写

代码语言:javascript
复制
open Clflags

ocamlc给我错误:未绑定的模块

但是克莱旗和元帅都在这个页面的列表中。

当我尝试用opam安装Cl之旗时,opam告诉我找不到这个软件包

那么,如何使用包Cl之旗呢?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-19 12:51:42

Cflags是一个模块,它属于compiler-libs库,一个供编译器开发人员和扩展编译器的人使用的库。所以很有可能,你找错了模块。

要使用它,需要将compiler-libs文件夹添加到搜索路径中,并指定提供此模块的库名。有些自动化工具会为您做到这一点,但是在低级别上(对于本机编译),这将是如下所示(假设您的代码在test.ml文件中):

代码语言:javascript
复制
ocamlopt -I +compiler-libs ocamlcommon.cmxa test.ml  -o test
票数 2
EN

Stack Overflow用户

发布于 2018-04-19 12:48:55

这不是标准库的索引,而是标准发行版提供的所有模块的索引,包括编译器的前端模块,Clflags是其中的一部分。

您可以获得标准库的模块这里的列表,以及始终打开的模块这里的“核心”列表。

除非您对编译器本身进行黑客攻击,否则Clflags并不是真正有用的,对于初学者来说,这并不是最好的任务。您可以在文档中找到如何使用它进行编译的这里

代码语言:javascript
复制
ocamlc other options -I +compiler-libs ocamlcommon.cma other files

但是,在您很好地掌握了OCaml及其编译器之前,您不会想要这样做。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49917121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档