As many have noticed, GSLL does not load with GSL 2.x, because of changes
to the library API. I have pushed a commit 32bbd1aae8ef that should address
this, and I'd like to find testers who have GSL 2 installed. If you do, and
you're comfortable with Lisp programming and loading GSLL from git, please
get this commit and try loading it. You should get an error "GSLL does not
currently work with GSL version 2.x". Then go into init/gsl-version.lisp
and remove the last form (error ...), and try loading again. Let me know
what happens.
Note that at this point, just getting GSLL to load is my goal. It may not
execute the changed definitions without error, but I want to start by just
getting it to load. If you have results on what happens when you run the
functions, I'd be happy to hear about it.
Here is the gitlab page for GSLL:
https://gitlab.common-lisp.net/antik/gsll
Thanks,
Liam
GSLL has only recently been updated to support GSL through v. 1.13. Any 1.x
version should load, but new functions will not be available. For GSL v
2.x, the interface changed so I expect it will not load. Your best bet for
quick results is to locate an old (1.x) version of GSL and use that.
Note: please join the mailing list. Posts from non-members are
automatically discarded due to the spam problem.
Thanks,
Liam
---------- Forwarded message ----------
From: <gsll-devel-bounces(a)common-lisp.net>
Date: Sat, Jul 23, 2016 at 3:23 PM
Subject: Auto-discard notification
To: gsll-devel-owner(a)common-lisp.net
The attached message has been automatically discarded.
---------- Forwarded message ----------
From: Karl Fogelmark <karlf(a)thep.lu.se>
To: gsll-devel(a)common-lisp.net
Cc:
Date: Sat, 23 Jul 2016 21:16:40 +0200
Subject: GSL 2.0 incompatibility?
Hi!
I'm trying to install GSLL, as I need it for software that is to be included
in a paper I plant to submit to a journal the coming week. However, I'm
getting an error message I interpret at an incompatibility with GSL 2 (which
changed parts of the API).
I'm running Arch Linux, with GSL 2.1, SBCL 1.3.6, libffi 3.2.1,
and attempted to install GSLL using quicklisp, as recommended.
I've been advised on #lisp to contact you, as the mail list indicates that
this bug has been resolved?
If you have any ideas how I can resolve this issue, it would be much
appreciated. Please find the error message attached below.
Regards
/Karl
[vandelay@x201][~/quicklisp]% sbcl
This is SBCL 1.3.6, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
* (ql:quickload "gsll")
To load "gsll":
Load 1 ASDF system:
gsll
; Loading "gsll"
.............; cc -m64
-I/home/vandelay/quicklisp/dists/quicklisp/software/cffi_0.16.1/ -o
/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct
/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c
debugger invoked on a CFFI-GROVEL:GROVEL-ERROR in thread #<THREAD "main
thread" RUNNING {1002936593}>: External process exited with code 1.
Command was: "cc" "-m64"
"-I/home/vandelay/quicklisp/dists/quicklisp/software/cffi_0.16.1/" "-o"
"/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct"
"/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c"
Output was:
which: no rc in
(/home/vandelay/usr/bin:/home/vandelay/usr/local/bin:/home/vandelay/usr/bin:/home/vandelay/usr/local/bin:/home/vandelay/usr/bin:/home/vandelay/usr/local/bin:/home/vandelay/bin:/home/vandelay/usr/bin:/home/vandelay/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
In file included from
/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c:10:0:
/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c:
In function ‘main’:
/home/vandelay/quicklisp/dists/quicklisp/software/cffi_0.16.1/grovel/common.h:8:62:
error: ‘gsl_multifit_fdfsolver {aka struct <anonymous>}’ has no member
named ‘J’
#define offsetof(type, slot) ((long) ((char *) &(((type *) 0)->slot)))
^
/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c:32:36:
note: in expansion of macro ‘offsetof’
fprintf(output, " :offset %li)", offsetof(gsl_multifit_fdfsolver, J));
^~~~~~~~
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [RETRY ] Retry PROCESS-OP on #<GROVEL-FILE
"gsll" "solve-minimize-fit" "solver-struct">.
1: [ACCEPT ] Continue, treating PROCESS-OP on
#<GROVEL-FILE "gsll" "solve-minimize-fit" "solver-struct"> as having been
successful.
2: Retry ASDF operation.
3: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting
the configuration.
4: [ABORT ] Give up on "gsll"
5: Exit debugger, returning to top level.
(CFFI-GROVEL:GROVEL-ERROR "External process exited with code ~S.~@
Command was: ~S~{ ~S~}~@
Output was:~%~A" 1 "cc" ("-m64"
"-I/home/vandelay/quicklisp/dists/quicklisp/software/cffi_0.16.1/" "-o"
"/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct"
"/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c")
"which: no rc in
(/home/vandelay/usr/bin:/home/vandelay/usr/local/bin:/home/vandelay/usr/bin:/home/vandelay/usr/local/bin:/home/vandelay/usr/bin:/home/vandelay/usr/local/bin:/home/vandelay/bin:/home/vandelay/usr/bin:/home/vandelay/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
In file included from
/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c:10:0:
/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c:
In function ‘main’:
/home/vandelay/quicklisp/dists/quicklisp/software/cffi_0.16.1/grovel/common.h:8:62:
error: ‘gsl_multifit_fdfsolver {aka struct <anonymous>}’ has no member
named ‘J’
#define offsetof(type, slot) ((long) ((char *) &(((type *) 0)->slot)))
^
/home/vandelay/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/vandelay/quicklisp/dists/quicklisp/software/gsll-master-b2f6ae1f-git/solve-minimize-fit/solver-struct.c:32:36:
note: in expansion of macro ‘offsetof’
fprintf(output, \" :offset %li)\", offsetof(gsl_multifit_fdfsolver, J));
^~~~~~~~
")
0]