如何修复此错误:
/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found
Run Code Online (Sandbox Code Playgroud)
平台:
Linux alef 3.2.0-4-amd64 #1 SMP Debian 3.2.35-2 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
Wyz*_*ard 38
这意味着该程序是针对 glibc 2.14 版编译的,它需要该版本才能运行,但您的系统安装了旧版本。您需要根据系统上的 glibc 版本重新编译程序,或者安装更新版本的 glibc(Debian 中的“libc6”软件包)。
Debian 在“实验”存储库中有 glibc 2.16,但重新编译程序是更安全的选择。Glibc 是一切都依赖的库,因此升级它会产生深远的影响。尽管 Debian 的 glibc 2.16 软件包可能没有任何问题,但它位于实验性存储库中的事实意味着它没有接受太多的测试。
小智 22
我已经在这里发布了我的解决方案,重新发布以供参考。
在我的情况下,当我尝试在 Debian Wheezy(默认安装 glibc 2.13)上使用 GLIBC_2.14 运行应用程序(在 Ubuntu 12.04 LTS 上编译)时出现错误。
我使用一种棘手的方式来运行它,并得到正确的结果:
运行 dpkg 命令将它们安装到目录中(例如 /home/user/fakeroot/):
$ dpkg -x libc6-dev_2.15-0ubuntu10.6_amd64.deb /home/user/fakeroot/
$ dpkg -x libc6_2.15-0ubuntu10.6_amd64.deb /home/user/fakeroot/
Run Code Online (Sandbox Code Playgroud)使用指定的 LD_LIBRARY_PATH 运行您的命令:
$ LD_LIBRARY_PATH=/home/user/fakeroot/lib/x86_64-linux-gnu/ YOUR_COMMAND
Run Code Online (Sandbox Code Playgroud)我的应用程序仅使用 GLIBC_2.14 中的 memcpy(),并且它可以工作。
我不知道它是否会成功用于其他应用程序。但愿有帮助。
| 归档时间: |
|
| 查看次数: |
193062 次 |
| 最近记录: |