且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何解决A"版本`GLIBC_2.14'未找到"错误?

更新时间:2022-04-04 08:02:55

我觉得这里的信息的关键位为升级我的机器。所以,当这个工作之前,你正在构建和东西比12.04更​​早包装?如果是这样,那么问题是,现在12.04附带的libc的新版本(显然2.14),而你现在二进制文件记录该版本的libc的依赖。当您尝试莱尼,这可能使用libc中的旧版本上运行,链接器检测到莱尼版本不支持的API 2.14,而失败。

I think the critical bit of info here is 'upgrading my machine'. So when this worked before, you were building and packaging on something earlier than 12.04? If so, then the issue is that 12.04 now ships with a newer version of libc (apparently 2.14), and your binary now records a dependency on that version of libc. When you try to run on Lenny, which likely uses an older version of libc, the linker detects that the Lenny version does not support the 2.14 API, and fails.

我认为***的方案可能是做你的开发和测试12.04,然后当你想创建一个特定的Debian发行版的软件包,使用的 pbuilder 或类似的创建德布斯。这将确保用于包装构建库目标平台相匹配。

I think the best way forward is probably to do your development and testing on 12.04, and then when you want to create packages for a specific Debian release, use pbuilder or similar to create debs. This will ensure that the libraries used for the packaging build match the target platform.