Generate IRs with dune?
I was writing on a tight loop in OCaml to control PWM on GPIO pins on the raspberry pi zero, where I could observe a little bit of noise in the signal. I then remembered the post by OCamlpro on how to...
View ArticleOpam Local Library Install Missing Dependancy
I am currently working on a library using Dune and Opam to drive the compilation and development. I am able at the moment to build the library with the dune-project file below (I have removed...
View ArticleError: Unbound module Eio_mock
Is it possible to use Eio_mock to write inline tests? When I try to use it in my .ml file, I get the unbound module error. It works in fine in Utop. 3 posts - 2 participants Read full topic
View ArticleRunning tests when using dune build watch-mode
ocaml-lsp recommends running dune build --watch-mode. Doing so prevents running tests as the build directory is locked by that dune process. What is the recommended way of using dune and ocaml-lsp...
View ArticleDune, cross compilation, and Raspberry Pi
I’m thinking of doing some home projects for doing stuff like driving LEDs from a Raspberry Pi using OCaml. Is there a good way of doing this with a cross compiler via OCaml? Or do I need to install...
View Article(Sub)module not found in test when using dune
Hi, I’m new to OCaml and I’m trying to understand how to use dune. I constructed a minimal example that looks like this: . ├── dune-project ├── lib │ ├── dune │ ├── mylib.ml │ └── mymod.ml └── test...
View ArticleDocumentation created by dune build @doc looks ugly
I’m trying to get documentation comments converted to HTML pages. Following the documentation of Dune on that matter, I simply install the odoc package and run dune build @doc. (Assuming that my...
View ArticlePackaging foreign archives with bindings using ctypes
I’m working on libdash, which is offers OCaml and Python bindings to the dash POSIX shell parser. dune is being uncooperative around packaging the library up properly (i.e., with both bindings and...
View ArticleDraft tutorials on Modules, Functors and Libraries
Dear OCamlers, The series on ocaml.org tutorial updates continue. This time, the ocaml.org team has three drafts related to the module system in a single pull request. We want your feedback on it: GH...
View ArticleDune 'Cargo' project details?
I’m a little out of the loop on this–can someone give me a pointer to the work being done on the dune opam integration i.e. ‘Cargoization’ project? E.g. are there some design documents, issues, etc.?...
View ArticleForcing a ppx to use the bytecode runtime
I’m writing a ppx which depends on some code which only works under the bytecode runtime (think: depends on compiler-libs). It seems though that when I add (modes byte) to the dune stanza of the ppx,...
View Article`dune build @doc` generates nothing
I have a weird problem with dune build @doc @doc-private which generates nothing. And I’m trying to find a reason why it would behave this way. After running dune build @doc @doc-private the...
View ArticleDune 3.7.0's native support for watch mode on Windows (blog post)
The recently released Dune 3.7.0 includes native support for watch mode on Windows. This feature was implemented by a student, Uma Kothuri of the US, who interned at LexiFi last year for this project....
View ArticleWhat's possible with Melange
Hi Since dune got the integration with Melange (and Ahrefs migrated to Melange Ahrefs is now built with Melange) I wanted to write about the benefits of using it. I wrote a blog post comparing Melange...
View ArticleWriting ctypes bindings to system shared libraries for bytecode targets via...
Working on GitHub - lukstafi/ocaml-gccjit: OCaml bindings for libgccjit, I’m facing a problem with the same symptom as in this issue: Add link flags ocamlmklib when using ctypes stubs....
View ArticleQuestion about C dependencies
Hi, I have a question about how Dune works together with C libraries. I am not super familiar with C compilation in general much less how C interfaces with OCaml. I have two C libraries that I want to...
View Article[ANN] dune 3.13
We’re happy to announce that Dune 3.13.0 is now available. This feature is packed with fixes and new features that you can find in the changelog. There are a few new features that we would like to...
View ArticleWhat compilation flags does Dune use by default?
Heya! I’m trying to understand what compilation flags dune runs with by default. I know we can set up envs like this (env (dev (flags (:standard -w +42))) (release (ocamlopt_flags (:standard -O3))))...
View ArticleProposal: a new `represents` field in `findlib` META files
Proposal: represents field in findlib META files Note: in what follows I use, following dune terminology, the term library names for what is formally ocamlfind package names. Recently I have...
View ArticleTutorials on Modules, Functors and Libraries
Dear OCamlers, OCaml.org tutorial updates continue. We’ve just published the three tutorials on the module system announced in December: Modules — Based on the previous version Functors — Mostly...
View Article