首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建独立的OCaml程序

构建独立的OCaml程序
EN

Stack Overflow用户
提问于 2011-03-06 21:23:28
回答 2查看 585关注 0票数 1

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

我正在使用OMake,在我的机器上工作时,一切似乎都足够酷了,还链接了libs

代码语言:javascript
复制
OCAMLPACKS[] = str unix batteries

运行得很好,但如果我试图分发可执行文件,它会给我以下错误:

代码语言:javascript
复制
Fatal error: exception Sys_error("/usr/godi/share/camomile/database/general_category.mar: No such file or directory")

是的,我正在使用GODI,但我看不到任何明显的原因导致这个错误,有人能告诉我吗?此外,如果你有任何关于构建独立应用程序的技巧,请告诉我(我已经在与GODI争论,它只在x64版本中编译每个库,现在我无法生成x86可执行文件)

提前感谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-06 22:04:15

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

票数 3
EN

Stack Overflow用户

发布于 2011-03-06 22:06:24

我不用OMake,也不用电池,也不用GODI和Camomile。但在我看来,问题似乎来自于你链接到电池的事实,我猜电池必须在内部使用Camomile,而Camomile依赖于存储在文件系统中的数据来提供一些服务。如果该数据不存在于最终主机上,则无法加载。

请注意,使用OCaml可以非常简单地发布纯静态可执行文件。但要做到这一点,你需要考虑你使用的是哪些库(例如,如果你使用camomille,你将不得不随附支持文件)。

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

https://stackoverflow.com/questions/5210741

复制
相关文章

相似问题

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