[racket] Bindings for libgsl (GNU Scientific Library)

From: Jens Axel Søgaard (jensaxel at soegaard.net)
Date: Fri May 25 03:56:22 EDT 2012

Thanks for testing this. It was very helpful.

Using your program I got the library working on Racket 5.2.1.6 but
not on 5.3.0.6.

In mzgsl/low-level/gsl-lib.rkt I had to make sure CBLAS was loaded
in GLOBAL mode.

That is, in https://github.com/noelwelsh/mzgsl/blob/master/low-level/gsl-lib.ss
I changed

    (define libgslcblas (ffi-lib cblaslibpath))

to

    (define libgslcblas (ffi-lib cblaslibpath #:global? #t))

Now I get this transcript using your test program:

$ /Applications/Racket\ Full\ v5.2.1.6/bin/plt-r6rs proof.sps
#(2.0 2.0 2.0)
2.0
3.0
2.0

$ /Applications/Racket\ Full\ v5.3.0.6/bin/plt-r6rs proof.sps
Segmentation fault: 11

Note that prior to this I reinstalled GSL with this command:

    sudo port install gsl +universal

whether this made any change I do not know.

/Jens Axel

Posted on the users mailing list.