<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class="">Stephane,</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><font color="#0433ff" class="">This seems to contradict what you said above... unless Brew provides<br class="">binary packages that are not recompiled on each OCaml update.</font></blockquote><div class=""><br class=""></div><div class="">Yes, Brew provides binary packages.  But for Raspbian, I am doing the compiling myself.</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><blockquote type="cite" class="">Unison 2.51.2 does not compile with OCaml 4.08.1. In the following branch:</blockquote></div><div class=""><blockquote type="cite" class=""><br class=""></blockquote></div><div class=""><blockquote type="cite" class=""> <a href="https://github.com/glondu/unison/tree/unison-2.51" class="">https://github.com/glondu/unison/tree/unison-2.51</a></blockquote></div><div class=""><blockquote type="cite" class=""><br class=""></blockquote></div><div class=""><blockquote type="cite" class="">you will find a fix for that.</blockquote></div></blockquote><div class=""><br class=""></div><div class="">OK, I'll check out that fix, and see if I get any further.</div><div class=""><br class=""></div><div class=""><blockquote type="cite" class="">I would advise you to use the exact same version, 4.08.1. It is probably<br class="">easier to use opam.</blockquote></div><div class=""><br class=""></div><div class="">OK, what I found before was a page on <a href="http://ocaml.org" class="">ocaml.org</a> which had 4.08.0 as the latest version, with older versions also listed, but I've looked around and found another page on that site which has later releases (got to the earlier page via Google).</div><div class=""><br class=""></div><div class="">So you are saying that the even the patch (.0 vs .1) level of OCaml has to match?</div><div class=""><br class=""></div><div class="">Let me give this another try and report back.</div><div class=""><br class=""></div><div class="">Cheers,</div><div class=""><br class=""></div><div class="">Dave.</div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Aug 23, 2020, at 10:39 AM, Stéphane Glondu <<a href="mailto:steph@glondu.net" class="">steph@glondu.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Dear David,<br class=""><br class="">Le 23/08/2020 à 16:24, David Filip a écrit :<br class=""><blockquote type="cite" class="">So the latest version of Unison on macOS Brew is:<br class=""><br class="">    $ unison -version<br class="">    unison version 2.51.2 (ocaml 4.08.1)<br class=""><br class="">[...]<br class=""><br class="">So I download OCaml 4.08 to Raspbian, and successfully built and<br class="">installed it:<br class=""><br class="">    # ocaml -version<br class="">    The OCaml toplevel, version 4.08.0<br class=""></blockquote><br class="">I would advise you to use the exact same version, 4.08.1. It is probably<br class="">easier to use opam.<br class=""><br class=""><blockquote type="cite" class="">I then went back to Unison 2.51, and did a:<br class=""><br class="">    # make clean<br class="">    # make<br class=""><br class=""><br class="">but whereas with OCaml 4.02 I just received a bunch of warnings, I now<br class="">receive a fatal error when compiling Unison with OCaml 4.08 (to match<br class="">the version that Unison on Brew was built with):<br class=""><br class="">    ocamlopt: system.mli ---> system.cmi<br class="">    ocamlopt -g -unsafe-string -I lwt -I ubase -I system -I fsmonitor -I<br class="">    fsmonitor/linux -I fsmonitor/windows -I system/generic -I<br class="">    lwt/generic -c /opt/unison-2.51.2/src/system.mli<br class="">    ocamlopt: system.ml ---> system.cmx<br class="">    ocamlopt -g -unsafe-string -I lwt -I ubase -I system -I fsmonitor -I<br class="">    fsmonitor/linux -I fsmonitor/windows -I system/generic -I<br class="">    lwt/generic -c /opt/unison-2.51.2/src/system.ml<br class="">    *File "/opt/unison-2.51.2/src/system.ml", line 1*:<br class="">    *Error*: The implementation /opt/unison-2.51.2/src/system.ml<br class="">           does not match the interface system.cmi:<br class="">           Values do not match:<br class="">             val link : ?follow:bool -> string -> string -> unit<br class="">           is not included in<br class="">             val link : fspath -> fspath -> unit<br class="">           *File "/opt/unison-2.51.2/src/system/system_intf.ml", line<br class="">    70, characters 0-35*:<br class="">             Expected declaration<br class="">           *File "/opt/unison-2.51.2/src/system/system_generic.ml", line<br class="">    50, characters 4-8*:<br class="">             Actual declaration<br class="">    Makefile.OCaml:422: recipe for target 'system.cmx' failed<br class="">    make[1]: *** [system.cmx] Error 2<br class="">    make[1]: Leaving directory '/opt/unison-2.51.2/src'<br class="">    Makefile:6: recipe for target 'text' failed<br class="">    make: *** [text] Error 2<br class=""></blockquote><br class="">Unison 2.51.2 does not compile with OCaml 4.08.1. In the following branch:<br class=""><br class="">  <a href="https://github.com/glondu/unison/tree/unison-2.51" class="">https://github.com/glondu/unison/tree/unison-2.51</a><br class=""><br class="">you will find a fix for that.<br class=""><br class=""><blockquote type="cite" class="">Any ideas on how to fix this?  The Brew version of OCaml for macOS is<br class="">actually 4.0.9.<br class=""></blockquote><br class="">This seems to contradict what you said above... unless Brew provides<br class="">binary packages that are not recompiled on each OCaml update.<br class=""><br class=""><br class="">Cheers,<br class=""><br class="">-- <br class="">Stéphane<br class=""><br class=""></div></div></blockquote></div><br class=""></div></body></html>