问题标签 [ocamlfind]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
493 浏览

ocaml - 如何在 OCaml 中编写库?

我正在用 ocaml 编写一个 bson 编码器/解码器库。

我现在有源文件(实际上只有一个文件)。

我的问题是,我应该如何将其作为一个库,例如ocaml-batteries-included,camomile等?

我的意思是,人们可以使用opam install它并使用ocamlfind+ocamlbuild来编译它吗?

0 投票
1 回答
750 浏览

installation - Ocaml OPAM 是否检测到之前安装的 Ocaml 包?

我最近按照说明安装了 OPAM 来试一试,它看起来不错,我想使用它。但是,在我选择尝试 OPAM 之前,它无法检测到我手动安装的以前安装的 OCAML 包。

OPAM 现在想要为任何软件包安装做的第一件事就是安装 ocamlfind。查询有关我手动安装的软件包的信息并不反映它们已经安装。这包括 ocamlfind。

我害怕做任何事情,因为我不知道安装另一个软件包可能会产生什么影响。OPAM 至少会覆盖或重新安装 ocamlfind。这会破坏我现有的 ocamlfind 及其对我已经手动安装的所有软件包的了解以及我使用它们的能力吗?我不想重新安装所有东西。我进行了搜索和搜索,但找不到有关此确切主题的任何文档或论坛帖子,而且我不确切知道 ocamlfind 是如何工作的。

至少,如果 OPAM 可以检测或被告知哪些包已经存在以及它们所在的位置以避免不必要的重新编译,那就太好了。也许它已经这样做了,但我无法发现它是否这样做。

0 投票
1 回答
2700 浏览

ocaml - 安装 ocamlfind.1.3.3 配置时出错:m4 不在 PATH 中;这是必需的

配置:m4 不在 PATH 中;这是必需的

我想知道如何解决这个问题。

非常感谢!(我试图将 m4 文件夹复制到该路径,但它不起作用)

0 投票
1 回答
431 浏览

ocaml - (OCamlfind) 构建依赖于 Core 的库

我正在尝试构建一个依赖于 Core 和 Core_extended 的小型库。我按照在 OCaml 中在哪里放置共享实用程序模块下的说明进行操作?并在 ocamlfind 中安装了库(在 META 文件中声明对 Core_extended 和 Core 的依赖)。现在在顶层使用它可以正常工作。

但是,当我尝试使用此库构建测试文件时,它不会自动检测到 Core 和 Core_extend 的依赖关系。使用这些编译指令

ocamlfind ocamlopt -c -g -package my_lib -thread -o file.cmx file.ml

ocamlfind ocamlopt -g -linkpkg -package my_lib -thread file.cmx -o file.native

我收到以下错误:

错误:没有为以下模块提供实现:

如果我使用额外的参数“-package core_extended”编译文件,那么它会编译,但是这是非常不切实际的。

有没有办法让这个依赖对编译过程透明,这样“-package my_lib”会自动加载到 Core 和 Core_extended 中?

编辑:这是我的元文件的内容:

编辑2:

在 META 文件中将“depends”重命名为“requires”解决了这个问题!

0 投票
0 回答
126 浏览

windows - 使 gtk 的 pkg-config --libs 在 Windows 上不包含换行符

我最近从http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/2.24/gtk+-bundle_2.24.10-20120208_win32.zip安装了 GTK 。从这里pkg-config安装的似乎喜欢附加^M到它的行,至少在某些情况下:

这破坏了 lablgtk2 的配置脚本,我需要从源代码构建 Coq。(Coq 测试lablgtk2.sourceview2,预建的 Windows 版本lablgtk2似乎不包括。

如何让 gtk+pkg-config停止附加^M(或以lablgtk2.sourceview2其他方式)?

0 投票
1 回答
3034 浏览

ocaml - 在 OCaml utop 中使用多个模块

我最近正在阅读一个 OCaml 项目,我想将源文件放在 utop 中,以便我可以做一些实验。
假设我有两个文件amodule.mlbmodule.ml
bmodule.ml将使用在amodule.ml中定义的函数,例如,bmodule使用Amodule.anyfunction()其中anyfunction()在amodule.ml中定义。
我想把它们都放在 utop 中:

这不起作用,因为Amodule是基于amodule.ml文件的模块名称,而 utop 不知道这些东西,我想。
那么如何在不改变文件内容的情况下把这些文件放到utop中呢?</p>

0 投票
1 回答
1201 浏览

linux - 来自 Ocaml brew 的 Utop 引发错误

我已经使用 ocamlbrew 来安装 ocaml 和相关的实用程序。我也有一个较早的安装。如文档中所述,我使用 /opt 来安装 ocamlbrew。但是当我以普通用户身份运行 utop 时,出现错误

什么都不返回

0 投票
2 回答
10344 浏览

ocaml - ocamlfind 看不到已安装的软件包

我想使用命令编译我的项目:

但我收到以下错误:

在对这个问题进行一些研究之后,我读到通过 opam 安装的包和在 opam 安装之前安装的包可能存在问题(在这种情况下是 ocamlfind)所以我尝试检查并卡住,因为 ocamlfind 是通过 opam 安装的。有谁知道我可以尝试做些什么来解决这个问题?

提前致谢。

0 投票
2 回答
100 浏览

ocaml - 如何查看Camlp4的预处理结果?

我在一个名为module.ml. 是否有使用 ocamlfind 的简单方法来执行此操作,或者我必须直接调用camlp4 并手动传递所有原始参数?

0 投票
1 回答
422 浏览

ocaml - Opam / findlib 警告“......有多个定义”

我在我的主目录中有一个 opam 的本地安装和一个 ocaml 编译器和几个库的(fedora)包安装。

在任何项目中运行 ocamlbuild 命令都会产生很多警告:

我对 opam 的理解是支持不同位置的多个安装,但是这些警告会使任何编译输出变得混乱。

有没有办法告诉 findlib 我知道这些其他安装并且不打印这些无用的警告?

编辑:因为我被要求提供我的 ocamlfind 输出: