4

SBCL can load hunchentoot successfully. However, the CCL reported:

? (ql:quickload :hunchentoot)
To load "hunchentoot":
Load 1 ASDF system:
hunchentoot
; Loading "hunchentoot"
> Error: Unable to load any of the alternatives:
>           ("libssl.so.0.9.8" "libssl.so" "libssl.so.4")
> While executing: CFFI::FL-ERROR, in process listener(1).
> Type :POP to abort, :R for a list of available restarts.
> Type :? for other options.nter code here

Any suggestion is appreciated!

z_axis
  • 8,272
  • 7
  • 41
  • 61

2 Answers2

7

If you don't need ssl (or will use Apache for this), you can

(push :hunchentoot-no-ssl *features*)

and then

(ql:quickload 'hunchentoot)
Luka Ramishvili
  • 889
  • 1
  • 11
  • 20
  • 1
    Sorry, my mistake. (push :HUNCHENTOOT-NO-SSL *features). colon, not single quote. – Luka Ramishvili Feb 28 '12 at 20:24
  • Great, one more potential hunchentoot-er :) don't forget to mark as answer. – Luka Ramishvili Mar 05 '12 at 08:27
  • Thanks :) If you need anything more with the instalation, don't hesitate to contact. I've currently installed hunchentoot on ubuntu, centos and windows (at work). I've encountered and solved some problems, so maybe I can help a little. – Luka Ramishvili Mar 07 '12 at 05:41
  • 1
    You are welcome! Now i just use hunchentoot-cgi to run an old python CGI application. It works great. Maybe i will use hunchentoot to host other web application in the future. – z_axis Mar 08 '12 at 01:15
  • I accidentally got here and noticed two errors in my answers: first, you should use #:hunchentoot or "hunchentoot" as package name. second, it's \*features\*, not *features (though it was a typo). – Luka Ramishvili Jul 13 '12 at 16:18
3

It is looking for a version of SSL library you don't have. An easy way to correct it (I haven't tested the proper behavior of the library itself) is symbolic linking it. Run these in your shell:

locate libssl

It should return something like:

/lib/i386-linux-gnu/libssl.so.1.0.0
/lib/x86_64-linux-gnu/libssl.so.1.0.0
/usr/lib/firefox-8.0/libssl3.so
/usr/lib/i386-linux-gnu/libssl.so.1.0.0
/usr/lib/thunderbird-8.0/libssl3.so
/usr/lib/x86_64-linux-gnu/libssl.so
/usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
/usr/lib/x86_64-linux-gnu/libssl3.so
/usr/lib/x86_64-linux-gnu/libssl3.so.1d

The one you want is most certainly /usr/lib/x86_64-linux-gnu, or similar, depending on your platform.

Then create the symbolic link:

ln -s libssl3.so libssl.so

replacing libssl3.so with the version you have installed.

sbenitezb
  • 536
  • 7
  • 21
  • On my freebsd box, there is a link: /usr/lib/libssl.so@ -> libssl.so.6, but why canot CCL find /usr/lib/libssl.so ? – z_axis Jan 05 '12 at 00:14