我正在尝试正确安装SBCL sbcl-2.0.0-x86-64-linux。提取和安装完成,没有任何问题。
但是,在$提示符下键入“sbcl”以启动SBCL运行时,会出现错误消息:
sbcl:/lib/x86_64-linux-gnu/libc.so.6:找不到版本“GLIBC_2.28”(sbcl必需)。
我的平台是Linux Mint 19.3,所有更新如下所示:
$ hostnamectl
Static hostname: Lumpy
Icon name: computer-desktop
Chassis: desktop
Machine ID: f3d85c83fd6e458aba76dbf56f683032
Boot ID: e7a1a123ce29458c90ebca9f77ea3888
Operating System: Linux Mint 19.3
Kernel: Linux 5.0.0-37-generic
Architecture: x86-64
另外,libc6版本似乎早于所需的2.28:
$ apt-cache policy libc6
libc6:
Installed: 2.27-3ubuntu1
Candidate: 2.27-3ubuntu1
Version table:
*** 2.27-3ubuntu1 500
500 http://archive.ubuntu.com/ubuntu bionic/main amd64 Packages
100 /var/lib/dpkg/status
有没有简单的方法可以更新到libc6的2.28版本?或者,也许必须回到以前的SBCL?
(ps:我是linux新手,所以任何方向都必须非常清楚-谢谢。)
最佳答案
尽管可以更新glibc,但您实际上并不想要这样做。构建glibc非常复杂,发行版会应用许多补丁来使事情正常进行。如果您更换它,事情可能会以令人兴奋的方式破裂。
您最好构建SBCL或找到其他软件包。例如,您可以下载Debian源码包并自行构建。如果要这样做,可以从packages.debian.org页面的右侧下载三个源文件,并将它们放在目录中。然后运行:
apt install build-essential fakeroot
dpkg-source -x *.dsc
cd sbcl*
dpkg-buildpackage -us -uc -rfakeroot
它可能会抱怨一个或多个包裹丢失;使用
apt install PACKAGE
安装它们,然后重试,直到获得二进制软件包,该软件包将在上面的目录中。关于linux - 在Linux Mint上更新glibc以进行sbcl安装,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59760837/