[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [MirageOS-devel] Compile error when using cstruct
On 16 Jul 2014, at 13:01, Dave Scott <Dave.Scott@xxxxxxxxxx> wrote: > Hi, > > On 16 Jul 2014, at 12:48, Tom Brown <tom.jrbrown@xxxxxxxxx> wrote: > >> Hi all, >> >> I receive the following error when I compile a Mirage application, exactly >> on the lines that I have cstruct definitions: >> >> Parse error: [label_expr_list] or [expr level .] expected after "{" (in >> [expr]) >> Preprocessing error on file lib/input.ml >> Error while running external preprocessor >> Command line: camlp4 '-I' '/usr/lib/ocaml/camlp4' '-I' >> '/home/ocaml/.opam/system/lib/lwt' '-I' '/home/ocaml/.opam/system/lib/lwt' >> '-parser' 'o' '-parser' 'op' '-printer' 'p' 'lwt-syntax-options.cma' >> 'lwt-syntax.cma' 'lib/input.ml' > /tmp/ocamlppf271c4 >> >> Would you please help me in finding the problem? > > It looks like the cstruct.syntax extension isn’t loaded. I normally add a > line to my _tags file at the bottom like this: > > <foo.ml>: pkg_cstruct.syntax, syntax_camlp4o You don't have to edit the _tags file manually if using the `mirage` CLI tool. In the mirage/mirage-www/src/config.ml, we activate the `cow.syntax` XML extension as follows: let main = let libraries = [ "cow.syntax"; "cowabloga" ] in let packages = [ "cow"; "cowabloga" ] in foreign ~libraries ~packages "Dispatch.Main" (console @-> kv_ro @-> kv_ro @-> http @-> job) let () = register "www" [ main $ default_console $ fs $ tmpl $ server ] You should be able to do the same with cstruct. Just pass "cstruct.syntax" for the libraries (which refers to the ocamlfind command-line), and "cstruct" for the packages variable (which refers to OPAM packages, that usually contain multiple ocamlfind packages). I've created https://github.com/mirage/mirage/issues/271 to track whether we should activate cstruct by default from the CLI tool. -anil _______________________________________________ MirageOS-devel mailing list MirageOS-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |