Ich versuche jbuilder zusammen mit ppx_deriving (ppx_deriving_yojson
speziell) zu verwenden, aber stecken seit gut über einer Stunde jetzt fest. Mein aktueller Ansatz ist eine jbuild
Datei mit folgendem Inhalt:Wie zu verwenden jbuild und ppx_driver mit ppx_deriving
(jbuild_version 1)
(executables
((names (my-binary))
(libraries
(ppx_deriving
ppx_deriving_yojson
cohttp
yojson))
(preprocess (pps (ppx_deriving_yojson ppx_driver.runner)))))
Aber das führt zu
Command [5] exited with code 1:
$ (cd _build/default && ../.ppx/default/ppx_deriving_yojson+ppx_driver.runner/ppx.exe --dump-ast -o src/my_file.pp.ml --impl src/my_file.ml)
File "src/my_file.ml", line 16, characters 5-13:
Error: Attribute `deriving' was not used
Ausführen des erzeugten ppx_driver
in _build/.ppx/default/ppx_deriving_yojson+ppx_driver.runner/ppx.exe
manuell mit -print-transformations
gibt leere Ausgabe, so dass ich offensichtlich etwas fehlt.
Der Code baut gut mit topkg
von nur ppx_deriving
und ppx_deriving_yojson
als Abhängigkeiten.
Welche Version von ppx_deriving + ppx_deriving_yojson verwenden Sie? jbuilder funktioniert nur mit ppxs basierend auf ocaml-migrate-partree und es gab noch keine Veröffentlichung von opx von ppx_derivation basierend auf ocaml-migration-partree. – hcarty