On Sun, 2013-09-08 at 08:44 -0400, Liam Healy wrote:
> The executables provided on the web page
> http://www.sbcl.org/platform-table.html for Linux amd64 do not run under
> Debian 7.1 (current stable release, kernel 3.2). On startup, the following
> message appears, after which SBCL exits:
> /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found
This probably happens because that SBCL was built against a newer glibc
version than your system provides. Apparently glibc introduced an
incompatible version of the memcpy function at version 2.14 and the
pre-built SBCL seems to require that version:
$ objdump -x src/runtime/sbcl | grep 'memcpy.*2.14'
0000000000000000 F *UND* 0000000000000000 memcpy@...
I once explored how SBCL could be changed to allow (optionally) building
linux-binaries that would work with older glibc versions. The attached
patch demonstrates the basic mechanism. Things needing improvement:
* the declaration is added in multiple places instead of a central
* the patch does not add a commandline option for make.sh or
something similar to control the behaviour.