如何在 CentOS 6.5 中将 glibc 更新到 2.14

如何在 CentOS 6.5 中将 glibc 更新到 2.14

我想在我的 CentOS 6.5 机器上安装 Android NDK。但是当我运行该程序时,它说它需要 glibc 2.14 才能运行。我的 CentOS 6.5 仅安装了 Glibc 2.12。所以我尝试通过以下方式更新 glibc:

$ sudo yum update glibc

但之后我发现glibc版本仍然是2.12,而不是2.14。

$ ldd --version
ldd (GNU libc) 2.12

我认为 glibc 2.14 可能无法在 CentOS 存储库上使用。那么如何在 CentOS 6.5 上更新到 glibc 2.14 呢?

答案1

您无法安全glibc地更新Centos 6。但是,您可以轻松地2.14同时安装2.12,然后使用它来编译项目等。操作方法如下:

mkdir ~/glibc_install; cd ~/glibc_install 

wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz

tar zxvf glibc-2.14.tar.gz

cd glibc-2.14

mkdir build

cd build

../configure --prefix=/opt/glibc-2.14

make -j4

sudo make install

export LD_LIBRARY_PATH="/opt/glibc-2.14/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"

答案2

要并行安装 glibc 2.14,请添加配置前缀:

tar zxvf glibc-2.14.tar.gz
cd glibc-2.14
mkdir build
cd build
../configure --prefix=/opt/glibc-2.14
make -j4
make install

按照这个过程,您将能够构建 2.14,但您需要告诉编译器在哪里寻找 glibc。

以下是向程序公开 glibc 的方法。

  1. LD_LIBRARY_PATH=/opt/glibc-2.14/lib

    导出 LD_LIBRARY_PATH。

    该库在您当前的登录会话期间公开。

  2. 您可以像这样永久链接新的 glibc 版本,但请阅读下面的警告:

    ln -sf /opt/glibc-2.14/glibc-2.14.so /lib/libc.so.6。

由于 libc.so.6 只是一个符号链接。执行上述命令将使链接指向新的 glibc 库。不过,不建议执行此步骤,因为 Linux 中有许多程序依赖于旧版本,并且会停止运行。

答案3

常见的替代技术。并行安装 GLIBC 2.14(将其安装到 /opt 目录)然后即可供需要它的程序使用,而不会破坏您的核心操作系统。

相关内容