无法安装 libc6-dev

无法安装 libc6-dev

gcc 编译器出现问题,在修复过程中,部分 libc6 软件包被卸载。现在我尝试在 Ubuntu 14.04 (3.13.0-24-generic) 上使用 apt-get 重新安装它。但是,sudo apt-get install libc6-dev 给出以下错误消息:

The following packages have unmet dependencies:
 libc6-dev : Depends: libc6 (= 2.19-10ubuntu2) but 2.19-10ubuntu2.1 is to be installed
E: Unable to correct problems, you have held broken packages.

我尝试使用 aptitude install、卸载各种软件包以及我能想到的几乎所有命令变体。但是,它们都给出了此错误的变体。我该如何修复此问题,或者至少解决这个问题以安装 gcc 和 gfortran?

编辑:

以下是输出apt-cache policy libc6 libc6-dev

libc6:
  Installed: 2.19-10ubuntu2.1
  Candidate: 2.19-10ubuntu2.1
  Version table:
 *** 2.19-10ubuntu2.1 0
        100 /var/lib/dpkg/status
     2.19-10ubuntu2 0
        500 http://old-releases.ubuntu.com/ubuntu/ utopic/main amd64 Packages

libc6-dev:
  Installed: (none)
  Candidate: 2.19-10ubuntu2
  Version table:
     2.19-10ubuntu2 0
        500 http://old-releases.ubuntu.com/ubuntu/ utopic/main amd64 Packages

的输出cat /etc/os-release为:

NAME="Ubuntu" VERSION="14.10 (Utopic Unicorn)" ID=ubuntu
ID_LIKE=debian PRETTY_NAME="Ubuntu 14.10" VERSION_ID="14.10"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"

grep utopic -ir /etc/apt/sources.list /etc/apt/sources.list.d/*.list给出:

/etc/apt/sources.list:deb http://old-releases.ubuntu.com/ubuntu utopic
main universe restricted multiverse /etc/apt/sources.list:deb-src
http://old-releases.ubuntu.com/ubuntu utopic main universe restricted
multiverse #Added by software-properties /etc/apt/sources.list:# deb
http://old-releases.ubuntu.com/ubuntu/ utopic-security main universe
restricted multiverse /etc/apt/sources.list:deb-src
http://old-releases.ubuntu.com/ubuntu/ utopic-security main universe
restricted multiverse #Added by software-properties
/etc/apt/sources.list:# deb http://old-releases.ubuntu.com/ubuntu
utopic-updates main universe restricted multiverse
/etc/apt/sources.list:deb-src http://old-releases.ubuntu.com/ubuntu
utopic-updates main universe restricted multiverse #Added by
software-properties
/etc/apt/sources.list.d/george-edison55-ubuntu-cmake-3_x-utopic.list:deb
http://ppa.launchpad.net/george-edison55/cmake-3.x/ubuntu utopic main
/etc/apt/sources.list.d/george-edison55-ubuntu-cmake-3_x-utopic.list:#
deb-src http://ppa.launchpad.net/george-edison55/cmake-3.x/ubuntu
utopic main
/etc/apt/sources.list.d/graphics-drivers-ubuntu-ppa-utopic.list:deb
http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu utopic main
/etc/apt/sources.list.d/graphics-drivers-ubuntu-ppa-utopic.list:#
deb-src http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu utopic
main
/etc/apt/sources.list.d/gwendal-lebihan-dev-cinnamon-nightly-utopic.list:deb
http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-nightly/ubuntu
utopic main
/etc/apt/sources.list.d/gwendal-lebihan-dev-cinnamon-nightly-utopic.list:#
deb-src
http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-nightly/ubuntu
utopic main
/etc/apt/sources.list.d/ubuntu-toolchain-r-ubuntu-test-utopic.list:deb
http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu utopic main
/etc/apt/sources.list.d/ubuntu-toolchain-r-ubuntu-test-utopic.list:#
deb-src http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu utopic
main
/etc/apt/sources.list.d/ubuntu-toolchain-r-ubuntu-test-utopic.list:#
deb-src http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu utopic
main

当我尝试时sudo apt-get install --reinstall libc6,我收到以下消息:

Reading package lists... Done
Building dependency tree
Reading state information... Done
Reinstallation of libc6 is not possible, it cannot be downloaded.
The following packages will be REMOVED:
  nvidia-331-updates
0 upgraded, 0 newly installed, 1 to remove and 2 not upgraded.
1 not fully installed or removed.
After this operation, 184 MB disk space will be freed.
Do you want to continue? [Y/n]

以下是输出sudo apt-get install libc6=2.19-10ubuntu2

The following packages will be REMOVED:
  lib32gcc1 lib32z1 libc6:i386 libc6-i386 libgcc1:i386 nvidia-331-updates
  retty:i386
The following packages will be DOWNGRADED:
  libc6
0 upgraded, 0 newly installed, 1 downgraded, 7 to remove and 2 not upgraded.
1 not fully installed or removed.
Need to get 4,765 kB of archives.
After this operation, 204 MB disk space will be freed.
Do you want to continue? [Y/n] Y
Get:1 http://old-releases.ubuntu.com/ubuntu/ utopic/main libc6 amd64 2.19-10ubuntu2 [4,765 kB]
Fetched 4,765 kB in 0s (5,794 kB/s)
Can't exec "locale": No such file or directory at /usr/share/perl5/Debconf/Encoding.pm line 16.
Use of uninitialized value $Debconf::Encoding::charmap in scalar chomp at /usr/share/perl5/Debconf/Encoding.pm line 17.
Preconfiguring packages ...
dpkg: warning: 'ldconfig' not found in PATH or not executable
dpkg: error: 1 expected program not found in PATH or not executable
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin
E: Sub-process /usr/bin/dpkg returned an error code (2)

以下是之后出现的错误消息sudo apt-get update

W: Failed to fetch http://ppa.launchpad.net/gwendal-lebihan-dev/cinnamon-nightly/ubuntu/dists/utopic/InRelease  Unable to find expected entry 'main/binary-foreign-architecture/Packages' in Release file (Wrong sources.list entry or malformed file)

W: Failed to fetch http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/dists/utopic/InRelease  Unable to find expected entry 'main/binary-foreign-architecture/Packages' in Release file (Wrong sources.list entry or malformed file)

W: Failed to fetch http://ppa.launchpad.net/george-edison55/cmake-3.x/ubuntu/dists/utopic/Release  Unable to find expected entry 'main/binary-foreign-architecture/Packages' in Release file (Wrong sources.list entry or malformed file)

W: Failed to fetch http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu/dists/utopic/main/binary-amd64/Packages  404  Not Found

W: Failed to fetch http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu/dists/utopic/main/binary-foreign-architecture/Packages  404  Not Found

W: Failed to fetch http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu/dists/utopic/main/binary-i386/Packages  404  Not Found

W: Failed to fetch http://old-releases.ubuntu.com/ubuntu/dists/utopic/Release  Unable to find expected entry 'main/binary-foreign-architecture/Packages' in Release file (Wrong sources.list entry or malformed file)

以下是输出ls -la /lib/x86_64-linux-gnu/libc*

-rwxr-xr-x 1 root root 1844160 Dec  1  2014 /lib/x86_64-linux-gnu/libc-2.19.so
lrwxrwxrwx 1 root root      14 Feb 21  2014 /lib/x86_64-linux-gnu/libcap.so.2 -> libcap.so.2.24
-rw-r--r-- 1 root root   18952 Feb 21  2014 /lib/x86_64-linux-gnu/libcap.so.2.24
lrwxrwxrwx 1 root root      21 Dec 15  2014 /lib/x86_64-linux-gnu/libcgmanager.so.0 -> libcgmanager.so.0.0.0
-rw-r--r-- 1 root root  133056 Dec 15  2014 /lib/x86_64-linux-gnu/libcgmanager.so.0.0.0
-rw-r--r-- 1 root root  194968 Dec  1  2014 /lib/x86_64-linux-gnu/libcidn-2.19.so
lrwxrwxrwx 1 root root      15 Dec  1  2014 /lib/x86_64-linux-gnu/libcidn.so.1 -> libcidn-2.19.so
lrwxrwxrwx 1 root root      17 Jul  7  2014 /lib/x86_64-linux-gnu/libcom_err.so.2 -> libcom_err.so.2.1
-rw-r--r-- 1 root root   14592 Jul  7  2014 /lib/x86_64-linux-gnu/libcom_err.so.2.1
-rw-r--r-- 1 root root   43368 Dec  1  2014 /lib/x86_64-linux-gnu/libcrypt-2.19.so
-rw-r--r-- 1 root root 1961344 Jan  9  2015 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
lrwxrwxrwx 1 root root      16 Dec  1  2014 /lib/x86_64-linux-gnu/libcrypt.so.1 -> libcrypt-2.19.so
lrwxrwxrwx 1 root root      12 Dec  1  2014 /lib/x86_64-linux-gnu/libc.so.6 -> libc-2.19.so

答案1

好的,让我们从头开始:

您可以按照用户@doug 的建议来解决您的问题:

wget https://launchpad.net/~ubuntu-security/+archive/ubuntu/ppa/+build/6608877/+files/libc6-dev_2.19-10ubuntu2.1_amd64.deb
sudo dpkg -i libc6-dev_2.19-10ubuntu2.1_amd64.deb

如果有效,你可以点赞这个答案,但不要接受。等到原作者发布答案后再接受。

但是,请记住,使用此方法只是绕过了真正的问题。您无法更新存储库、添加 PPA,或者在最坏的情况下,如果您的包缓存出现问题,则无法安装其他程序。因此,如果没有其他方法可以帮助,我建议您使用此方法。

如果你真的想彻底解决这个问题,那么:

步骤1: 开始清理混乱局面sources.list

运行以下命令来删除除官方 Ubuntu 存储库之外的 PPA,因为它们已经过时了:

sudo rm /etc/apt/sources.list.d/*.list

然后备份,打开并编辑sources.list

sudo cp /etc/apt/sources.list /etc/apt/sources.list.old
sudo gedit /etc/apt/sources.list

删除那里的所有内容并添加以下行:

deb http://old-releases.ubuntu.com/ubuntu utopic main universe restricted multiverse
deb http://old-releases.ubuntu.com/ubuntu/ utopic-security main universe restricted multiverse
deb http://old-releases.ubuntu.com/ubuntu utopic-updates main universe restricted multiverse

保存并退出。

第2步: 更新存储库:

运行以下命令:

sudo apt-get update

确保此命令正常运行。如果发生 GPG 错误,请添加密钥并再次更新您的存储库:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 16126D3A3E5C1192

步骤3: 使固定ldconfig

运行以下命令:

wget http://launchpadlibrarian.net/172657659/libc-bin_2.19-0ubuntu6_amd64.deb
dpkg -x libc-bin*.deb libdir/
sudo cp libdir/sbin/ldconfig /sbin/
sudo dpkg -i libc-bin*.deb
sudo apt-get install -f

部分摘自这里

步骤4: 安装:

运行以下命令:

sudo apt-get install libc6=2.19-10ubuntu2
sudo apt-get install libc6-dev

希望这可以帮助...

答案2

我试图运行 mozilla 的 deepspeech 示例ffmpeg_vad_streaming在干净的 Ubuntu 22.04.1 LTS 上,我遇到了与问题类似的错误。

首先,我在安装节点包时遇到错误:

npm ERR! /usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h:9:16: fatal error: stdint.h: No such file or directory
npm ERR!     9 | # include_next <stdint.h>

解决方案是要安装libc6-dev

$ sudo apt install libc6-dev
The following packages have unmet dependencies:
 libc6-dev : Depends: libc6 (= 2.35-0ubuntu3) but 2.35-0ubuntu3.1 is to be installed
E: Unable to correct problems, you have held broken packages.

因此,我想扩展 Olimjon 的回答,这给了我一个修复的想法。

我可以通过查找来修复它libc-dev-binlibc6-dev来自 jammy-updates 的软件包。下载后:

sudo dpkg -i libc-dev-bin_2.35-0ubuntu3.1_amd64.deb
sudo apt install linux-libc-dev libcrypt-dev rpcsvc-proto libtirpc-dev libnsl-dev
sudo dpkg -i libc6-dev_2.35-0ubuntu3.1_amd64.deb

答案3

您是否尝试过 sudo apt install libc3-dev

你也可以输入 sudo apt search libc3,它会显示 2 个包

Sorting... Done
Full Text Search... Done
libc3p0-java/bionic,bionic 0.9.1.2-9 all
library for JDBC connection pooling

libc3p0-java-doc/bionic,bionic 0.9.1.2-9 all
library for JDBC connection pooling (documentation)

相关内容