Bindings to FFTW3.
OCaml C Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config
examples
pkg
src
tests
.gitignore
.travis.yml
CHANGES.md
LICENSE.md
Makefile
README.md
appveyor.yml
fftw3.descr
fftw3.opam
travis-ci.sh

README.md

Interface to FFTW, version 3

Build status

Perquisites

The FFTW, version 3, with its development files (fftw3.h) must be installed on your platform. For example, on Debian or Ubuntu, you need to install the package libfftw3-dev (see the opam file for other distributions).

Compilation

jbuilder build @install

If your fftw3 header files or libraries are not where you C compiler expects to find them and pkg-config does not return the right location either, you need to tell the discover script where to find them by setting the environment variable FFTW3_CFLAGS:

FFTW3_CFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib"

Of course, replace /opt/local/include (resp. /opt/local/lib) by the actual paths of your header files (resp. library).

Usage

Fftw3 contains two submodules differing only by precision Fftw3.D for double precision and Fftw3.S for single precision. Note that the functions of the single precision module will raise Failure if the corresponding FFTW3 library was not discovered by the configure script. See the mli file for more details.

Examples

Some examples need additional libraries:

If these are not detected by the configure script, the corresponding examples will not be compiled or will have less features.

Bugs

To report bugs, use the Github issues page.

Development

If you want to participate to the development of Fftw3, make a fork of the project and submit a pull request.

Licence

FFtw3 is released under the LGPL with the special exception of the standard library. See the file LICENSE for more details.

Although not required, it will be appreciated if your product mentions it uses these bindings.