Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Build Status

OCaml bindings for L-BFGS

L-BFGS is an optimization algorithm in the family of quasi-Newton methods that approximates the Broyden–Fletcher–Goldfarb–Shanno (BFGS) algorithm using a limited amount of computer memory.

This library is a binding to Nocedal's implementation of L-BFGS-B which adds the possibility of setting bounds on the variables.


The easiest way to install the library is to use opam:

opam install lbfgs

If you clone this repository, download Lbfgsb.3.0 and extract it in src/ (it should create src/Lbfgsb.3.0/). Then issue make and make install.

In case the right FORTRAN compiler for your platform is not automatically found, you can specify it explicitly by exporting the FORTRANC variable before invoking opam. For example

export FORTRANC=/usr/bin/x86_64-w64-mingw32-gfortran.exe
opam install lbfgs


If you cloned this repository, issue

dune build @doc

You can also consult the interface or online.