Hello,
I'm *very* new to Common Lisp and have only just started understanding how to use packages and asdf. I have a client/server application in mind, of which I've already written a fair amount (using the asdf module system), and I would like to use iolib to multiplex the i/o.
I'm using sbcl 1.0.18.debian on an ubuntu 9.04 x86 box.
I initially used asdf to set up iolib and it picked the iolib-0.6.0 package and downloaded/compiled a bunch of denpendencies. There were some problems compiling it concerning its dependencies, which I'm sorry to say I did not record or what I did to get around them--but it had to do with cffi-grovel not being a package asdf new about, and I believe I had to install cffi by hand before iolib would finish compiling becaue the grovel module was now part of the cffi.
So, I started looking around for an example for how to use iolib, and found one online in the current sources for iolib called echo-server.lisp. It took a while for me to realize that net.sockets in the iolib-0.6.0 version was moved to iolib.sockets in the current sources, and after noticing that some other API changes happened and whatnot, I removed the iolib-0.6.0 site and system from my ~/.sbcl/{site,system} directory, removed the asd file symlinks, and git checked out the head of iolib.
I put that checkout into the above mentioned place, hand set up the asd symlinks, and tried (require 'iolib) again.
This is what I got:
* (require 'iolib)
... compile lines ...
debugger invoked on a SB-PCL::INITARG-ERROR in thread #<THREAD "initial thread" RUNNING {A834819}>: Invalid initialization argument: :SONAME in call for class #<STANDARD-CLASS CFFI-GROVEL:WRAPPER-FILE>. See also: The ANSI Standard, Section 7.1.2
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name): 0: [ABORT] Exit debugger, returning to top level.
(SB-PCL::CHECK-RI-INITARGS #<CFFI-GROVEL:WRAPPER-FILE {AC30651}> (:NAME "ffi-wrappers" :PATHNAME "ffi-wrappers-unix" :PARENT #<ASDF:SYSTEM "iolib.syscalls" {AC27D91}> :SONAME "libiolib-syscalls")) 0]
I don't know how to get around this error.
I apologize for my gross misunderstanding of how to do all of this. I'm in the process of figuring it out.
Thank you.
-pete