2016-04-21 6 views
0

Команда написано в README.md не работает (Использование ocamlfind показано.) Я понимаю, что файл исполнение ppx_metaquot является своим родом перезапись файла, так что я могу перевести мой код, используя квази котировку таким образом:Как использовать ppx.metaquot в OCaml?

ocamlfind ppx_tools/rewriter ~/.opam/system/lib/ppx_tools/ppx_metaquot sample.ml 

но это может быть не предполагаемый способ, поэтому, пожалуйста, скажите мне правильное использование.

ответ

1

Когда WD использовать некоторые ППК обычно Wd использование -package вариант ocamlfind:

ocamlfind ocamlc -c -package ppx_tools.metaquot sample.ml 

компилируется sample.ml с помощью препроцессора ppx_tools.metaquot.

Если вы хотите, чтобы увидеть результаты ППК в читабельной форме, AFAIK все становится немного сложнее .:

ocamlfind ppx_tools/rewriter -ppx ~/.opam/system/lib/ppx_tools/ppx_metaquot sample.ml 

или следующее лучше:

ocamlfind ppx_tools/rewriter -ppx `ocamlfind query ppx_tools`/ppx_metaquot sample.ml 

Там может быть проще, чем это, но я не знаю.

+0

Спасибо, но в моей среде, происходит какая-то ошибка с использованием ocamlc: ш: ppx_tools.metaquot: команда не найдена Файл «mpr.ml», строка 1: Ошибка: Ошибка при запуске внешнего препроцессора Командная строка : ppx_tools.metaquot '/ var/folders/gk/5tlptk8j44751wj4bw_2lzm00000gn/T/camlppxb52f14' '/ var/folders/gk/5tlptk8j44751wj4bw_2lzm00000gn/T/camlppx459e01' – henoc

+0

Ах, сорри, я сделал опечатку. 'ocamlfind ocamlc -c -package ppx_tools.metaquot sample.ml' является правильным. Я также исправляю часть ответа. – camlspotter

+0

О, я вижу, ppx также можно использовать в качестве пакета, спасибо. – henoc