Utiliser VSCode pour OCaml sans Dune

Pour compiler, par exemple, un fichier test.ml, voici la commande à utiliser :

$ ocamlbuild test.byte

Tous les fichiers temporaires sont ainsi générés dans un dossier _build/ et un lien symbolique test.byte -> _build/test.byte est créé.

Problème : VSCode et l’extension OCaml Platform a besoin des .cmi pour pouvoir utiliser plusieurs fichiers dans un projet.

Pour résoudre ce problème, on peut créer un lien symbolique dans le dossier racine vers les .cmi du dossier build/ pour les rendre visibles.

$ ln -s _build/*.cmi .

Maintenant, c’est ocamlbuild qui râle parce que notre dossier est plus propre, on peut ignorer le warning en faisant désormais cette commande pour compiler.

$ ocamlbuild -no-hygiene test.byte