rust-GSL
rust-GSL copied to clipboard
A GSL (the GNU Scientific Library) binding for Rust
rust-GSL
A Rust binding for the GSL library (the GNU Scientific Library).
The minimum support Rust version is 1.54.
Installation
This binding requires the GSL library library (version >= 2) to be installed:
Linux
# on debian based systems:
sudo apt-get install libgsl0-dev
macOS
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.
Windows
Instructions are available there: https://www.gnu.org/software/gsl/extras/native_win_builds.html.
Usage
This crate works with Cargo and is on crates.io. Just add the following to your Cargo.toml file:
[dependencies]
GSL = "4.0"
You can see examples in the examples folder.
Building
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:
[dependencies.GSL]
version = "2"
features = ["v2_1"]
Documentation
You can access the rgsl documentation locally, just build it:
> cargo doc --open
Then open this file with an internet browser: file:///{rgsl_location}/target/doc/rgsl/index.html
You can also access the latest build of the documentation via the internet here.
License
rust-GSL is a wrapper for GSL, therefore inherits the GPL license.