5.2. 安装 make install 时出错

最常见的错误是没有一套基本的静态工具;在这种情况下,您只能使用 cd 命令,而不能使用其他任何命令。 这就是为什么在本指南中,我详细描述了如何制作这些静态工具的原因。

唯一不是静态的工具是 mount,而且我认为有充分的理由将其包含在 linux-utils 包中,该包还包含 loginpasswd 等。 由于您无法将静态链接版本与 PAM 或其他安全相关软件结合使用,因此在所有情况下都静态编译它们是不明智的。 当然,如果您真的确定自己在做什么,您可以自由地这样做。

5.2.1. 返回到可正常工作的配置

如果您有静态工具,则返回到可正常工作的配置的方法非常简单:转到目录/usr/local/lib/并将所有新安装的文件移动到另一个位置(例如/usr/local/lib/storedaway)。 您可以通过查看它们的版本号来识别它们,该版本号应与您的 glibc 安装版本号相同(在我的示例中,所有文件都符合 lib*-2.2.4 方案),当然还有创建日期和时间。 两个不同的库在同一时间具有相同的版本号是非常罕见的——我本人从未经历过这样的事情——但为了确保您不会删除对您的系统重要的东西,请检查创建的日期和时间。 在这种情况下,一个非常有用的工具是 Midnight Commander,如果您安装了它。

您可以尝试删除文件ld-2.2.4.solibc-2.2.4.so,然后在删除所有崩溃的文件之前运行 ldconfig -v。 这将使您至少可以使用大多数程序,并且在任何情况下您都能够运行 Midnight Commander。

删除所有文件后,不要忘记至少运行一次 ldconfig -v

5.2.1.1. 消除安装崩溃的原因

问题的一个常见原因是您的发行版将所有库文件存储在与新安装的例程将使用的位置不同的位置,因此经常发生两个版本同时运行,互相干扰。 在我的情况下,大量麻烦是由libc6.so的第二个副本引起的,该副本位于/lib,从该文件到/usr/local/lib中的对应文件的符号链接解决了这个问题。