Opam安装派生,语法错误

时间:2014-04-23 19:29:00

标签: ocaml deriving opam

所以基本上我正在尝试使用Opam在我的Mac上安装派生lib。

opam install deriving

我使用ocamlfind query,似乎安装成功。

#ocamlfind query deriving                                                                                                 
/Users/shuai/.opam/system/lib/deriving 

安装完成后,我尝试使用ocamlbuild编译这样一个简单的代码:

type stackop = PUSH | POP deriving (Show, Enum)

let s = PUSH in
  let s' = Show.show<stackop> s in 
    print_string s'

这是_tags文件:

<*> : package(unix), package(deriving)

这是命令:

ocamlbuild -use-ocamlfind exp.native

但是,我总是得到这个错误:

+ ocamlfind ocamldep -package unix -package deriving -modules exp.ml > exp.ml.depends
File "exp.ml", line 1, characters 27-28:
Error: Syntax error
Command exited with code 2.
Compilation unsuccessful after building 1 target (0 cached) in 00:00:00.

这很奇怪,我确信语法是正确的。

有人能给我一些帮助吗?

1 个答案:

答案 0 :(得分:3)

您似乎忘记提供deriving.syntax包。

使用以下_tags文件:

true: syntax(camlp4o)
true: package(deriving,deriving.syntax)
true: thread,debug,annot
true: bin_annot