问题标签 [ocaml-dune]

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 投票
1 回答
492 浏览

ocaml - OCaml 构建工具 dune 已安装,但未运行

我最近开始学习 OCaml,并想安装沙丘构建工具。我用过opam install dune,然后按照这里的说明进行操作。但是,在运行时dune build hello_world.exe,我收到以下错误:

apt search whitedune告诉我这与我想要的沙丘无关。

我仔细检查了沙丘是否已安装并重新运行opam install dune,以获取消息:

运行opam remove duneand后opam install dune,问题依旧。

我正在运行 Elementary OS 0.4.1 Loki。

谢谢!

0 投票
1 回答
440 浏览

macos - 错误:不支持 1.11 版的 dune

我想在我的 Mac 上测试这个项目: https ://github.com/nt591/monkey-ocaml。下载项目后,dune runtest返回如下错误:

然后,我遵循了这个建议,但它返回了这个:

我必须安装dnf吗?有人可以帮忙吗?

0 投票
1 回答
96 浏览

ocaml - Ocaml / ReasonML - 内置可执行文件中缺少库

dune build我有一个用于构建可执行文件的 ReasonML 项目。可执行文件在开发机器(构建代码的地方)上运行,没有任何问题。但是,如果我将此 exe 复制到我的另一台笔记本电脑(另一台具有相同 OSX 版本的 Mac),由于缺少库,我无法执行该文件:

我对 ocaml / reason 不是很有经验,但我希望可执行文件将所有必要的依赖项捆绑在二进制文件中。

dune build除了包含所有必要的库之外,是否有一个特殊的构建标志或其他一些我必须执行的步骤?

0 投票
1 回答
66 浏览

ocaml - Dune 的 OUnit 测试问题

我有一个具有这种结构的项目:

src/dune中,我有以下内容:

test/dune

当我去跑步时dune build,我得到了抱怨:

关于如何解决的任何想法?

0 投票
1 回答
77 浏览

shell - 将 OCaml 沙丘测试结果导出到文件

我一直在尝试做类似的事情:

但是,每当我尝试这样做时,都会创建一个空的 test.txt 文件。我希望将 dune runtest 的输出保存到 test.txt 中,理想情况下终端不输出任何内容(输出只能在文件中查看)。任何帮助,将不胜感激。

0 投票
1 回答
154 浏览

ocaml - 在 wsl 上使用沙丘时,ctypes 被隐藏(不满足“exist_if”)错误

我在我的 Windows 10 机器上使用 wsl ubuntu 并尝试使用沙丘构建一个 ocaml 项目( https://github.com/adamrk/llvm-ocaml-tutorial )。不幸的是,我收到了这个错误:

我找不到任何关于此的文档,所以我很迷茫。

什么也没做

0 投票
1 回答
70 浏览

ocaml - OCaml - 是否可以在沙丘中定义外部(系统)依赖项?

我制作了一个依赖于外部/系统包(即libnauty2-dev)的 OCaml 库。

由于我希望通过 opam 安装我的库,因此我寻找了一种将外部库指定为依赖项的方法。到目前为止,我发现 .opam 文件可以指定此类依赖项

这是我的问题:有没有办法在沙丘项目文件中指定我的依赖项,以便生成的 .opam 文件包含相同的依赖项?

0 投票
1 回答
152 浏览

functional-programming - OCaml:如何使用沙丘构建 mirage-tcpip?

我正在尝试在“示例”文件夹中的https://github.com/mirage/mirage-tcpip构建示例。

首先,我opam install . 在根目录中安装了所有依赖项。然后我做了dune build,它构建了_build很多.a, .cma, .cmx, .cmi, .cmxa文件,我不知道它们的用途是什么(有人可以解释吗?)。

无论如何,我认为这些示例必须单独构建,因为它们有自己的沙丘文件。但我尝试dune build在它们身上运行并得到:

0 投票
1 回答
51 浏览

ocaml - 是否可以在 OCaml 中创建 solib

我想在 OCaml 中为 Linux/FreeBSD 实现共享库,我需要它有 C 接口。这样我就可以实现各种语言的绑定。我有几个担忧:

  • OCaml 是垃圾收集的,我担心传递给外部代码的对象可能会被 GC 处理。是否可以禁用 GC?也许还有另一种方法可以解决这些问题?
  • 有没有办法编写像 C++extern "C"或类似的 OCaml 代码,以便将其公开为 C 符号?
  • 是否有任何类似的高级语言更适合编写 solibs?我仍然需要用 C/C++ 编写语言编译器,因此将其移植到新架构会相对容易。
0 投票
1 回答
235 浏览

ocaml - LLVM 包:没有为以下模块提供实现:Llvm_analysis

尝试使用 Llvm 包中的 Llvm_analysis 模块时,我收到错误消息:

这是我的错误还是 llvm 包有问题?

沙丘文件是: