为了使OCaml库与其余的安装过程良好地协作,可以与ocamlfind
等无缝协作,我需要在我的install
和uninstall
目标中使用012amOCaml库。基本上是一个“好公民”。目前我对GODI不感兴趣。谢谢!用于安装OCaml库的Makefile文件
回答
用于ocamlfind的META文件很容易编写(基本上,您可以在另一个ocaml项目中查找META¹,将其复制并进行相应的更改),并且它们将为您提供ocamlfind集成,特别是对邮寄的简单支持 - 建立安装和拆卸(使用ocamlfind install
和ocamlfind remove
)。你应该从那开始。
¹:例如我从batteries's META获取灵感。
Makefile的构建部分更棘手,它们有许多解决方案(OCamlMakefile,OMake,ocamlbuild,普通的Makefile等),具有不同的长处和弱点。如果你的项目很简单,我会推荐ocamlbuild,它自己负责很多依赖关系跟踪。
您也可以使用Oasis,这是一个相对较新的工具,它建立在ocamlbuild和ocamlfind之上,旨在为预构建配置和各种构建和部署提供统一的配置文件(您的程序,您的软件库,随附资料或文件......)。它还不是一个成熟的项目(它的小兄弟Oasis-DB还没有发布),但是我鼓励你如果有时间就试试看。它比META复杂一些,因为它最终会做得更多,因此首先构建META仍然是一个很好的步骤。最后,你说你对Godi不感兴趣(Godi是一个非常好的系统,在某些情况下(比如BSD等),这是一个优秀的OCaml安装选择),但是如果你可能仍然对Godiva感兴趣,它是帮助构建GODI包的工具。不过,我从来没有使用过它。
我不使用makefiles,而是使用ocamlbuild和shell脚本来安装软件I distribute。 Debian人员用这些脚本为我的软件打包没有问题。所以你可能想检查它们,因为它们符合它们的一些要求(例如字节和本地代码的单独目标)。
您可能还想看看 到packaging policy,但我不知道这个文档是否仍然是最新的。
不要忘记为ocamlfind添加一个META文件。并且您可能还想为即将推出的oasis-db项目包含_oasis文件(尚未在我分发的软件中完成)。
- 1. 如何使从OPAM安装的库可用于OCaml?
- 2. 修改一项复杂的Makefile用于安装OCaml的包在一个模块中使用的库
- 3. OCaml-Wodi:安装Lablgtk2?
- 4. ocaml电池安装
- 5. 使用库的Makefile文件
- 6. Makefile文件库
- 7. OPAM和OCaml的安装
- 8. ocaml的OPAM安装camlbz2
- 9. 更改macports安装的makefile
- 10. 用OCaml解析OCaml文件
- 11. OCaml的makefile依存问题
- 12. 用于安装的免费库*用于.NET的nix和mac文件系统?
- 13. 使用glob的Makefile安装目标
- 14. 用于参考文件的pandoc的Makefile
- 15. makefile文件编译的文件库
- 16. 与使用makefile模块(Ocaml)的问题
- 17. 安装在应用程序文件夹对于C库 “IGRAPH”/ C++
- 18. pylucene安装makefile错误
- 19. Rails Bundle安装错误Makefile
- 20. 用于编译共享对象库文件的简单makefile
- 21. OCaml安装,找不到二进制文件
- 22. OCaml的Makefile文件:没有规则,以使目标
- 23. 我无法安装rubyracer - 我无法创建Makefile文件由于某些原因
- 24. 对于makefile文件里面
- 25. 'All'属于Makefile文件?
- 26. OCaml的 - 无法安装核心
- 27. 安装后更改OCaml的gcc
- 28. 并行安装不同的ocaml版本
- 29. 用于mp3编辑的Ocaml库?
- 30. 用于在多个项目中安装依赖关系Makefile
这是OCaml绑定到C库,可以假设存在,FWIW。 – Gaius 2011-05-05 08:44:54