Awesome Open Source
Awesome Open Source

Gonum LAPACK Build Status Coverage Status GoDoc

This repository is no longer maintained. Development has moved to

A collection of packages to provide LAPACK functionality for the Go programming language ( This provides a partial implementation in native go and a wrapper using cgo to a c-based implementation.


  go get

Install OpenBLAS:

  git clone
  cd OpenBLAS

Then install the lapack/cgo package:

  CGO_LDFLAGS="-L/path/to/OpenBLAS -lopenblas" go install

For Windows you can download binary packages for OpenBLAS at

If you want to use a different BLAS package such as the Intel MKL you can adjust the CGO_LDFLAGS variable:

  CGO_LDFLAGS="-lmkl_rt" go install



Defines the LAPACK API based on


Binding to a C implementation of the lapacke interface (e.g. OpenBLAS or intel MKL)

The linker flags (i.e. path to the BLAS library and library name) might have to be adapted.

The recommended (free) option for good performance on both linux and darwin is OpenBLAS.


If you find any bugs, feel free to file an issue on the github issue tracker for gonum/gonum or gonum/netlib for the CGO implementation if the bug exists in that reposity; no code changes will be made to this repository. Other discussions should be taken to the gonum-dev Google Group.!forum/gonum-dev


Please see for general license information, contributors, authors, etc on the Gonum suite of packages.

Related Awesome Lists
Top Programming Languages

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Golang (172,072
Intel (4,886
Linear Algebra (1,129
Blas (877
Numerical Methods (668
Cgo (657
Lapack (581
Openblas (23
Native Go (3