A backend for linear-programming using GLPK

Upstream URL


Nei Lindquist <>, Neil Lindquist <>


GPL 3.0


Github Actions Status GPL License

This is a backend for the linear-programming Common Lisp library using the GNU Linear Programming Kit (GLPK) library. To use this backend, simply evaluate (setf linear-programming:*solver* glpk:glpk-solver) before calling linear-programming:solve-problem. Then, the linear-programming library will automatically use GLPK to solve problems.


First, obtain a shared library for GLPK and place the dynamic library somewhere that CFFI can find it, such as in the current working directory. Precompiled binaries are available for many platforms, otherwise it can be compiled from source. First, the Julia GLPK wrapper provides precompiled binaries for a variety of platforms. Alternatively, your operating system's package manager may provide binaries for your platform. Additionally, there is a set of prebuild binaries specifically for Windows.

This library is available through Quicklisp and can be loaded as (ql:quickload :linear-programming-glpk). It is also available through the Ultralisp distribution. Alternatively, the library can be installed manually. First, install linear-programming, CFFI, and their dependencies. Next, download this repository somewhere ASDF can find them. Then, it can be loaded with (asdf:load-system :linear-programming).

The library's tests can be used to verify that the library is installed correctly and GLPK can be found. Evaluate (asdf:test-system :linear-programming-glpk) to test the system.

Dependencies (3)

  • cffi
  • fiveam
  • linear-programming

Dependents (0)

    • GitHub
    • Quicklisp