我正在尝试运行在2.6.24内核上编译的非常旧的应用程序。但每当我尝试运行该软件时,我都会收到错误 - :
./deskewDeslant: /lib/libc.so.6: version `GLIBC_2.14' not found (required by ./deskewDeslant)
./deskewDeslant: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./deskewDeslant)
我尝试了以下内容 - :
apt-get install libc6
我收到消息已经安装了最新版本的libc。我目前正在使用libc 2.7版。如何将版本降级到2.14?
我尝试从GNU网站的源代码编译2.14版,但没有运气。
如何将我的gibc降级为2.14?什么是正确的过程?我正在运行Ubuntu Hardy Heron,因为该程序是在2.6.24版本上专门编译的。
答案 0 :(得分:1)
我正在尝试运行一个在2.6.24内核上编译的非常旧的应用程序。
内核版本无关紧要。
您的应用程序是使用GLIBC-2.14
(或更新版本)在系统上编译的,因此不是那么老(GLIBC-2.14
was released on 2011-06-01)。
./deskewDeslant: /lib/libc.so.6: version 'GLIBC_2.14' not found (required by ./deskewDeslant)
上述错误表示您当前的GLIBC 太旧。
./deskewDeslant: /usr/lib/libstdc++.so.6: version 'GLIBCXX_3.4.15' not found (required by ./deskewDeslant)
上述错误表示您的libstdc++.so
也太旧。
我目前正在使用libc 2.7版。如何将版本降级到2.14?
您认为版本2.7
比版本2.14
更新,但逆是真的。您需要将GLIBC
从2.7
升级到2.14
(或更新)。
通常,给定的操作系统分发永远不会从最初附带的GLIBC
升级(破坏旧应用程序的风险太高)。这就是您apt-get install libc6
什么都不做的原因。
因此,您的选择是:
GLIBC
或GLIBC
。选项#2是最简单的。
选项#1可能是最好的(您将获得安全修复程序,您下载的其他应用程序将开箱即用)。
选项#3风险很大:除了可能以微妙的方式破坏现有应用程序之外,如果在更新过程中出错,升级系统libc是使系统无法启动的最简单方法。
选项#4在技术上非常重要。您可以找到更多详细信息here。