Discussion of Common Lisp
I'm new to lisp, and am trying to get a little project hosted on a Linux VPS I have. It's current (2008-08-27) Debian stable and I've apt-get installed sbcl. However, when I start it, I get this:
Code: Select all
fatal error encountered in SBCL pid 4399(tid 16384):
This version of SBCL only works correctly with the NPTL threading
library. Please use a newer glibc, use an older SBCL, or stop using
Any ideas ?
- Posts: 447
- Joined: Sat Jun 28, 2008 7:49 am
- Location: Austin, TX
The error message is pretty explanatory. NPTL is a now-standard Linux kernel feature that provides more highly-optimized threading. There are dependencies on NPTL in newer versions of SBCL. Your choices are as outlined. If you weren't using LD_ASSUME_KERNEL to try to get SBCL to think it's running on a different kernel, then you have one of two options. You can either use an old version of SBCL (and I have no idea when the NPTL dependency was introduced), or you can upgrade your VPS. Unfortunately, many VPS implementations use something like OpenVZ which requires that all the VPSs on the same server utilize the same kernel. Thus, you may be fighting city hall, as it were, to get your hoster to upgrade you. If you're lucky enough to be using a VPS service where you have complete control over the full environment, kernel, etc., you could try to rebuild a new kernel or reinstall a completely new OS variant that uses a new kernel (a recent Fedora or Ubuntu, for instance).
The only other thing I can suggest is building SBCL from scratch without any threading enabled. That might get you past the dependency but you'd be without threading.
Finally, you could look at other CL implementations. CLISP is fairly portable and seems to work on just about everything without too many funky dependencies.
- Posts: 5
- Joined: Tue Jul 15, 2008 1:45 am
Or you may choose another VPS provider. I am using http://www.linode.com/
and quite satisfied. SBCL runs without problems on their VPSes.