有没有人设法让当前版本的typerex (我猜是1.0.1)完全工作在ocaml < 4.0.0上?我目前使用的是ocaml 3.12.1和emacs24。我按照typerex网站上的说明进行了操作,因此我下载了gz,执行了配置、制作和安装,并将emacs行添加到了我的.emacs文件中。如果我启动emacs,它会执行代码突出显示,但当我尝试从typerex下拉菜单中执行某些操作时,例如重命名,我得到一个“Command failed : No cmt(i) file for...”。
根据typerex (http://www.typerex.org/manual-index.html)的站点,我应该在myocamlbuild文件中添加一行。
Options.ocamlc := S [ A "ocp-ocamlc"]
,我是这样喜欢的:
let _ = dispatch & function
| Before_options ->
(* Set up to use ocamlfind *)
Options.ocamlc := S [ A "ocp-ocamlc"]
但我还是遇到了同样的问题。
如上所述,我的.typerex文件指向我的_build,所以CMT _build (这是目前该文件中唯一存在的内容)。
我开始怀疑,因为显然只有ocaml 4.0.0或类似的版本才支持cmt文件(请在其他地方阅读),所以我是不是在某个地方得到了错误的版本(我不这么认为,但这并不能证明什么)。站点上的文档有点稀疏,support选项卡会立即转到stackoverflow,所以我想我来了……
卡斯珀
发布于 2013-05-28 17:38:08
从版本4.00开始,OCaml会生成.cmt
文件。我相信Typerex的早期版本提供了一个经过特殊修改的OCaml编译器版本,它集成了-bin-annot
分支,早在4.00发布之前-- -bin-annot
正是在OCamlPro中为满足Typerex的需要而开发的。
Typerex 2之所以会有很大的不同,是因为之前/现在的Typerex设计使得它部署起来太过繁重,而且正如您所看到的,很难进行配置。在您等待更完善的第二个版本时,您可以使用以下非常好的工具:
-bin-annot
机制,因此非常容易安装和部署(它以前存在很多与4.00Typerex之前相同的问题)。它也可以在Emacs和Vim中使用(但这一次Emacs界面看起来更精致)。这些工具的组合不会为您提供Typerex、present或promised的所有功能(特别是没有太多可重构的功能),但它们依赖于可靠的设计,并且可能会随着时间的推移而很好地发展。
https://stackoverflow.com/questions/16775304
复制相似问题