我有一个文件Tools.ml,其中包含我自己编写的一些常用实用程序函数.在.../Code/我有几个文件夹,每个文件夹包含一个项目.我的问题是我应该放置这个Tools.ml,以便所有文件夹和文件.../Code/可以共享此模块Open Tools.
希望我的问题很清楚......有没有人有一个好的解决方案?
编辑1:关注 @ gasche的回答,我写tools.ml了如下:
module Tools =
struct
let a_function = ...
...
end
Run Code Online (Sandbox Code Playgroud)
然后我编译了它,并ocamlfind install tools META tools.cmo tools.cmx tools.ml按照建议完成,看起来很顺利.然后我写test.ml了如下:
open Tools
let f = Tools.a_function
Run Code Online (Sandbox Code Playgroud)
然后我编译了它ocamlc test.ml -o test,然后我得到一个错误:
File "test.ml", line 1, characters 0-1:
Error: Error while linking test.cmo:
Reference to undefined global `Tools'
Run Code Online (Sandbox Code Playgroud)
谁能告诉我发生了什么?