Unison source compile errors in OCAML -
i trying compile unison source using ocaml compiler(ver 4.01.0) , gnu make 4.0. source code taken link (http://www.seas.upenn.edu/~bcpierce/unison//download/releases/unison-2.27.57/)
i extracted tar.gz , wrote command "make native=false" mentioned in user manual (http://www.seas.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html) see section building unison scratch windows.
code starts compiling few seconds stops , following errors appear:
----------
file "/cygdrive/c/unison_build/unison-2.27.57/update.ml", line 1: error: implementation /cygdrive/c/unison_build/unison-2.27.57/update.ml not match interface update.cmi: ... in module namemap: field `split' required not provided in module namemap: field `choose' required not provided in module namemap: field `max_binding' required not provided in module namemap: field `min_binding' required not provided in module namemap: field `bindings' required not provided in module namemap: field `cardinal' required not provided in module namemap: field `partition' required not provided in module namemap: field `filter' required not provided in module namemap: field `exists' required not provided in module namemap: field `for_all' required not provided in module namemap: field `merge' required not provided in module namemap: field `singleton' required not provided makefile.ocaml:339: recipe target 'update.cmo' failed make: *** [update.cmo] error 2
i got exact same error (with ocaml 3.12) , solved patching file update.mli
follows (4th line):
-module namemap : map.s type key = name.t +module namemap : mymap.s type key = name.t
note known bug (bug #585453) , got patch debian package here (file 0005-fix-build-with-ocaml-3.12.patch
). patch valid @ least 2.27.57 , 2.32.52. in same package can find patch ocaml 4 seems.
Comments
Post a Comment