1

在试图了解如何在 OCaml 中生成不需要任何太具体的二进制文件时(例如,安装任何作为 OCaml 构建工具的东西),我变得疯狂。

我正在使用 OMake,在我的机器上工作时一切看起来都足够酷,还将库与

OCAMLPACKS[] = str unix batteries

效果很好,但是如果我尝试分发可执行文件,它会给我以下错误:

Fatal error: exception Sys_error("/usr/godi/share/camomile/database/general_category.mar: No such file or directory")

是的,我正在使用 GODI,但我没有看到此错误的任何明显原因,有人可以启发我吗?此外,如果您在构建独立应用程序方面有任何技巧,请告诉我(我已经在与仅在 x64 版本中编译everylib 的 GODI 争论,现在我无法生成 x86 可执行文件)

提前致谢

4

2 回答 2

3

甘菊库需要运行时配置。有关如何设置的信息,请参阅README.txt 。特别是,它需要运行时文件(.mar您看到的缺失)才能正常工作。

于 2011-03-06T14:04:14.980 回答
2

我不使用 OMake,既不使用电池,也不使用 GODI 和甘菊。但从我所看到的情况来看,问题似乎来自这样一个事实,即您链接电池,我猜它必须在内部使用甘菊,而甘菊依赖于存储在文件系统中的数据来提供一些服务。如果最终主机上不存在该数据,则加载失败。

请注意,使用 OCaml 发送纯静态可执行文件是相当简单的事情。但为此,您需要考虑使用哪些库(例如,如果您使用 camomille,则必须随附支持文件)。

于 2011-03-06T14:06:24.253 回答