3

BOLT、SEXP、ocamlVizを組み合わせて大規模なプロジェクトを作りたいです。問題は、SEXPとBOLTがCamlP4を使用しており、ocamlvizがcamlp5を使用していることです。しかし、ocamlc / ocamloptの-pp引数の1つのチェーンへの呼び出しをどのように組み合わせることができますか?

これがocamlvizなしの実際のプロジェクトの私の呼び出しです:ocamlopt.opt -c -I + dynlink -I + bolt -I + threads -I + lablgtk2 -I + extlib -I + pcre -I + netsys -I + netstring -I + json-wheel -I + num -I + nums -I + sexplib -I + zip -I + xml-light -I + xmlrpc-light -I + equeue -I + netclient -g -annot -p -thread -pp ' camlp4o /usr/lib/ocaml/bolt/bolt_pp.cmo -logger'\''foo.native' \'' -level DEBUG-- -I / usr / lib / ocaml / sexplib -I / usr / lib / ocaml / type-conv pa_type_conv.cmo pa_sexp_conv.cmo'-o foo.cmx foo.ml

4

2 に答える 2

1

明らかな理由で、2つの異なるプリプロセッサでソースファイルを同時に前処理することは不可能です。また、最初のプリプロセッサは2番目のプリプロセッサの構文を認識しないため、次々に使用することもできません。解決策は、異なるソースファイルで異なる構文を使用するか、ocamlvizをcamlp4に移植することです。

于 2011-03-29T09:17:22.897 に答える
0

Camlp4に渡す-printer OCamlと、前処理されたO'Camlファイルがソース形式で出力されます。その後、別の手順でCamlp5を使用してこのファイルを再度解析できます。

于 2011-03-26T18:23:17.980 に答える