问题标签 [ocamlbuild]
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.
ocaml - 使用 OCaml 生成 _tags 文件的目的是什么,以及如何解释其内容?
从Building OCaml code that uses list comprehension post 开始,我可以使用_tags
文件来执行ocamlbuild
更少的构建选项。
从电池介绍中,我还需要有 _tags 文件才能使用电池包。
为什么第一个示例使用<**/*>
第二个示例时使用<*>
?一般来说,ocamlbuild 中 _tags 文件的目的是什么?你有一些很好的教程吗?
ocaml - 用于简单 OCaml 项目的基本 Oasis 或 Opam 文件
我是 OCaml 的新用户。我问了一个问题来学习如何建立一个基本的 OCaml 项目,但我仍然有问题。跳到末尾以获得 TL;DR
例如,我正在尝试学习 Irmin。在Irmin 的主页上,我看到我必须做
这样做,我最终得到了 Irmin 版本 0.8.3。不幸的是,我不能效仿他们的例子,因为显然 Irmin 的版本是 0.9.4,而且看起来 API 已经改变了。所以,我想开始一个干净的项目,只依赖 Irmin 0.9.4
首先,我设置了一个 opam 开关
确保从头开始工作。然后,我创建了一个_oasis
看起来像这样的基本文件
然后我从 Irmin 主页中复制了示例example.ml
。
如果我这样做oasis setup
,然后ocamlbuild example.ml
我会得到一堆错误
所以简而言之,我的问题是:
建立一个依赖于 Irmin 0.9.4 的干净项目的最简单方法是什么,确保它是独立的(它不会依赖于构建过程安装的预安装库)?
ocaml - 如何在ocaml中调用模块
我写了一个包含 Vector 模块和 Matrix 模块的 ocaml 文件,我想在 Matrix 模块中调用 Vector 模块,但是编译器说 Vector 模块是未绑定的模块。我不知道为什么,这是我的代码
它们在同一个 .ml 文件中,我如何在 Matrix 模块中编写代码来调用 Vector 模块(不使用仿函数)
ocaml - OCamlfind 本地库未绑定模块
我正在尝试使用 ocamlfind 安装库。我正在使用 OCamlMakeFile。这是我的Makefile:
所以基本上这个库是我想要分发的模块的集合。该库的基本用法是(main.ml):
我只通过运行“make”来编译库。它生成三个文件:“owebl.a、owebl.cma、owebl.cmxa”。然后我使用 ocamlfind 安装库:
哦,META文件是:
在我尝试编译使用该库的上述示例之前,一切正常。我跑:
我得到:
我尝试添加open Owebl
到 main.ml 的开头,但我得到了类似的“未绑定模块 Owebl”。我很困惑为什么这些模块都是未绑定的。我错过了什么?
ocaml - 使用“in”和“and”操作在 ocaml 中传递多个语句
我想将此 C++ 代码转换为 ocaml,但出现语法错误
C++ 代码
Ocaml代码
问题是 t 的值没有在 a12 和 a21 数组中传递,并且它变得无界。
ocaml - oasis 选择了错误的 ocamlbuild
我尝试使用 Opam 提供的 Ocaml 版本编译 Ocaml 项目。我的 ocamlbuild、ocamlfind 和 oasis 似乎还可以:
但是当我尝试编译时,似乎调用了错误的ocamlbuild版本,甚至ocamlfind的版本是正确的,我认为它解释了为什么ocamlfind找不到sexplib库。
我试图告诉 oasis 使用哪个版本的 ocambuild 没有成功,有人知道怎么做吗?谢谢
ocaml - 使用 ocamlbuild 时生成 Menhir 的转储/解释文件
我发现 Menhir 提供了 --dump 和 --explain 选项,它对调试有很大帮助。但是如何在 ocamlbuild 下启用这些选项,以便 Menhir 始终在编译时生成转储文件?
我尝试编写 myocamlbuild 文件处理自定义标签menhir_dump
,如下所示:
但是当它编译时,选项被插入到子命令中,并且在ocamlc
阶段编译失败。
有什么建议么?
opengl - 使用 ocamlbuild 构建 SDL 和 OpenGL 应用程序
我正在尝试使用 ocamlsdl 和 lablgl 创建一个 OCaml 程序,但我不知道如何编译它。相关信息如下:
注意: ocamlfind 找不到 ocamlsdl。当我转到 .opam 的 lib 目录时,我找到一个 ocamlsdl 文件夹,但它只有一个名为 opam.config 的空文件。我注意到的一件奇怪的事情是 main.byte 编译但不起作用,但 main.native 根本不编译。
也许问题是我没有链接 SDL 框架,但我不知道如何使用 ocamlbuild 来做到这一点。关于如何编译它的任何想法?
ocaml - ocamlbuild 指定输出位置/名称
我可以使用 ocamlbuild 工具指定构建位置和文件名吗?我想说(用伪代码):
ocaml - Ocamlbuild 不考虑包含的文件夹
我正在尝试使用 ocamlbuild 来构建我的项目。它需要考虑在文件夹中包含myfolder/
以下文件的外部库(也使用 ocamlbuild 编译)(myfolder 是我在文件中创建的好库的符号链接myocamlbuild.ml
):
要编译我的库,我运行以下命令:
当我运行它时,我遇到了错误:
如您所见,该选项-I myproject
尚未赋予 command ocamlfind ocamlc -i ...
。您可以注意到,如果我手动添加ocamlfind ocamlc -i -I 'myproject'
此步骤有效。我尝试了很多不同的东西来解决我的问题:使用-cflags '-I,myproject' -lflags '-I,myproject'
,放入_tags
:
但我总是有这个错误。
我不知道这是否是相关信息,但我使用了 ocsigen myocamlbuild.ml 文件的略微修改版本:
先感谢您,
托拜厄斯博拉。