Makefile OCaml包括带有Oasis的第三方库

Makefile OCaml包括带有Oasis的第三方库,makefile,ocaml,Makefile,Ocaml,我是OCaml的新手。 我想在另一个应用程序目录中包含一些库,其中包含一组cmx、cmxa、o文件。使用OASIS之类的工具进行此操作的最佳方法是什么?我猜目录的include指令最终必须出现在Makefile中,但我不知道如何在不从头编写Makefile的情况下将它们放到那里。还是你有更好的选择?似乎这种语言的这些特征并没有得到很好的记录 谢谢。库是如何安装的?它们很可能是通过findlib安装的。您可以查询可用的软件包,如 ocamlfind list 如果没有,您应该使用findlib安

我是OCaml的新手。 我想在另一个应用程序目录中包含一些库,其中包含一组cmx、cmxa、o文件。使用OASIS之类的工具进行此操作的最佳方法是什么?我猜目录的include指令最终必须出现在Makefile中,但我不知道如何在不从头编写Makefile的情况下将它们放到那里。还是你有更好的选择?似乎这种语言的这些特征并没有得到很好的记录


谢谢。

库是如何安装的?它们很可能是通过findlib安装的。您可以查询可用的软件包,如

ocamlfind list
如果没有,您应该使用findlib安装第三方库,这样OASIS就可以轻松地处理包括目录在内的内容。要手动执行此操作,安装findlib后,创建一个包含一些简单细节的文件。然后跑,

ocamlfind install <package-name> META <list of files>
如果您忘记了任何文件,可以包括-add选项来添加更多文件


然后您只需添加文件,Oasis和findlib将处理其余部分。

很遗憾,库没有通过ocamlfind安装。这使事情变得复杂,不幸的是,实际上可能有30个不同的.cmx文件,我不确定它们的依赖关系,所以写一个META可能太多了。你能问一下库的作者关于添加一个META文件的事吗?如果他们愿意,那真的是最好的解决方案;此外,这也有助于图书馆被采用。有问题的图书馆是什么?