如何在Debian上将glibc从2.13升级到2.15?

时间:2012-06-02 15:34:04

标签: debian glibc

我听说我可以使用 apt-get install libc6 来实现,但是我需要在/etc/apt/sources.list中添加一些内容来接收最新的glibc版本。我该怎么办?

3 个答案:

答案 0 :(得分:86)

我可以通过编辑perror's answer中的建议在libc6 2.17中安装Debian Wheezy

重要
 您需要按 CTRL - ALT - F1 退出显示管理器。 然后,您可以使用slim

停止x(sudo /etc/init.d/slim stop

(用mdmlightdm或其他)替换苗条

将以下行添加到文件/etc/apt/sources.list

  

deb http://ftp.debian.org/debian实验主要

应改为:

  

deb http://ftp.debian.org/debian sid main

然后按照perror的其余部分发表:

更新您的包数据库:

  

apt-get update

安装eglibc包:

  

apt-get -t sid install libc6-amd64 libc6-dev libc6-dbg

重要
完成更新libc6后,重新启动计算机,您应该注释掉或删除刚添加的sid源(deb http://ftp.debian.org/debian sid main),否则您可能会冒险将整个发行版升级为sid。

希望这会有所帮助。我花了一段时间才弄明白。

答案 1 :(得分:46)

事实上,你现在不能轻易做到(在我写这条消息的时候)。我会尝试解释原因。

首先,glibc is no more已将其归入eglibc project。并且,Debian发行版在不久前转换为eglibc(参见herethere甚至是glibc source package page)。因此,您应该考虑通过这种命令安装eglibc package

apt-get install libc6-amd64 libc6-dev libc6-dbg

amd64替换为您想要的架构类型(查看包列表here)。

不幸的是,eglibc软件包版本在unstabletesting中最多只有2.13。只有experimental提供了此库的2.17版本。因此,如果您真的想要在2.15或更高版本中使用它,则需要从实验版本(不推荐)安装软件包。以下是以root身份实现的步骤:

  1. 将以下行添加到文件/etc/apt/sources.list

    deb http://ftp.debian.org/debian experimental main
    
  2. 更新您的包数据库:

    apt-get update
    
  3. 安装eglibc软件包:

    apt-get -t experimental install libc6-amd64 libc6-dev libc6-dbg
    
  4. ...祈祷

  5. 嗯,这就是所有人。

答案 2 :(得分:25)

您的脚本也包含错误,例如,如果您安装了dos2unix,那么如果您不喜欢我,那么它将因依赖性问题而失败。

我偶然发现了这个,因为我正在制作一个这样的脚本文件,以便给我刚接触Linux的朋友,因为我在Windows上制作了脚本,我指示他安装它,当时我没有dos2unix安装因此我遇到了错误。

这是我为您的解决方案制作的脚本的副本,但安装了dos2unix。

#!/bin/sh
echo "deb http://ftp.debian.org/debian sid main" >> /etc/apt/sources.list
apt-get update
apt-get -t sid install libc6 libc6-dev libc6-dbg
echo "Please remember to hash out sid main from your sources list. /etc/apt/sources.list"

此脚本已在3台计算机上测试过,没有错误。