GSL 7.0.0

A rust binding for the GSL (the GNU scientific library)


A Rust binding for the GSL library (the GNU Scientific Library).

The minimum support Rust version is 1.54.


This binding requires the GSL library library (version >= 2) to be installed:


# on debian based systems:
sudo apt-get install libgsl0-dev


brew install gsl

Apple silicon

Homebrew installs libraries under /opt/homebrew/include on Apple silicon to maintain backward compatibility with Rosetta 2.

After gsl has been installed in the usual way, use the environment variable:

RUSTFLAGS='-L /opt/homebrew/include'

before cargo run, cargo build, etc., to tell the compiler where gsl is located.


Instructions are available there:


This crate works with Cargo and is on Just add the following to your Cargo.toml file:

GSL = "7.0"

You can see examples in the examples folder.


To build rgsl, just run cargo build. However, if you want to use a specific version, you'll need to use the cargo features. For example:

cargo build --features v2_1

If a project depends on this version, don't forget to add in your Cargo.toml:

version = "2"
features = ["v2_1"]


You can access the rgsl documentation locally, just build it:

> cargo doc --open

You can also access the latest build of the documentation via the internet here.


rust-GSL is a wrapper for GSL, therefore inherits the GPL license.