Module in Unterordnern richtig kompilieren (ocamlbuild)

Ich habe vor kurzem beschlossen, die Dateien in meinem Projektverzeichnis zu organisieren. Ich habe die Parser, die ich für ein paar verschiedene Dateitypen hatte, in ein eigenes Verzeichnis verschoben und mich auch für ocamlbuild entschieden (da das Projekt immer komplizierter wurde und das einfache Shell-Skript nicht mehr ausreichte).

Ich konnte externe Projekte erfolgreich einbinden, indem ich myocamlbuild mit einigen Grundregeln modifizierte (aufrufend)ocaml_libIch werde ocamlfind ein anderes Mal verwenden, aber ich bin nicht sicher, wie ich den Ordner als Modul richtig in das Projekt einbinden kann. Ich habe eineparser.mlpack Datei und füllte es mit den richtigen Modulen enthalten sein (zB "Parser / Date", etc.), schrieb einparser.mli im Stammverzeichnis des Verzeichnisses für ihre Implementierungen und änderte die_tags Datei (siehe unten).

Während der Kompilierung wird das Parserverzeichnis ordnungsgemäß durchlaufenparser.cmi, parser.mli.depends wurden beide in der erstellt_build Verzeichnis; so gut wie alle*.cm[xio] Dateien im Unterverzeichnis Parser.

Ich habe das Gefühl, ich mache vielleicht etwas überflüssiges, aber unabhängig davon das Projektimmer noch kann das Parser-Modul beim Kompilieren nicht finden!

Vielen Dank!

_Stichworte

debug : true
<*.ml> : annot
"parser" : include
<parser/*.cmx>: for-pack(Parser)
<curlIO.*> : use_curl
<mySQL.*> : use_mysql
<**/*.native> or <**/*.byte> : use_str,use_unix,use_curl,use_mysql

Kompilierungsfehler

/usr/local/bin/ocamlopt.opt unix.cmxa str.cmxa -g -I /usr/local/lib/ocaml/site-lib/mysql mysql.cmxa -I /usr/local/lib/ocaml/curl curl.cmxa curlIO.cmx utilities.cmx date.cmx fraction.cmx logger.cmx mySQL.cmx data.cmx project.cmx -o project.native  
File "\_none\_", line 1, characters 0-1:  
Error: **No implementations provided for the following modules:**
         Parser referenced from project.cmx  
Command exited with code 2.  

Du wirst es bemerken-I parser ist in der obigen Verknüpfungsphase nicht enthalten; eigentlich ist keine der parser bezogenen dateien enthalten!

bearbeiten: Neue Details aus Kommentaren hinzugefügt und unten beantwortet.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage