首页 > 解决方案 > 如何跨 OS X 和 linux 使用一致?由于 ocaml 版本导致的致命错误

问题描述

我正在尝试从我的 OS X 机器到运行的 linux 机器上使用一致:CentOS release 6.10 (Final)

我不得不为 linux 机器做一个 unison 2.51 的静态编译。这个版本是:

unison version 2.51.2 (ocaml 4.02.3)

在 OS X 机器上,我使用了“brew install unison”。这给了我:

unison version 2.51.2 (ocaml 4.08.1)

如果我现在尝试使用 unison,我会得到:

Fatal error during unmarshaling (input_value: ill-formed message), possibly because client and server have been compiled with differentversions of the OCaml compiler.

我该怎么做才能让一致工作?

标签: centosmacos-sierraunison

解决方案


你必须在你的 linux 机器上从源代码编译 ocaml 和 unison。

Ocaml:您可以在https://caml.inria.fr/pub/distrib/上找到 ocaml 4.08 。编译说明在自述文件中。

Unison:从https://github.com/bcpierce00/unison/commits/master,您将看到提交 acfa105 是与 Ocaml 4.08.1 兼容的经过验证的提交。下载此提交并运行 make。

我遇到了完全相同的问题,并且能够使用上述步骤解决它。


推荐阅读