APT错误:取决于:perl(= 5.14.2-6ubuntu2)但是要安装5.14.2-6ubuntu2.1

时间:2012-09-27 09:33:59

标签: perl ubuntu apt

我只是尝试在Ubuntu上使用apt安装libperl-dev,但是我有以下错误:

user@comp-2:~$ sudo apt-get install libperl-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libperl-dev : Depends: perl (= 5.14.2-6ubuntu2) but 5.14.2-6ubuntu2.1 is to be installed
               Depends: libperl5.14 (= 5.14.2-6ubuntu2) but 5.14.2-6ubuntu2.1 is to be installed
E: Unable to correct problems, you have held broken packages.

我试图谷歌问题,但没有找到清楚的东西 有人可以解释一下这是什么意思:“取决于:libperl5.14(= 5.14.2-6ubuntu2)但是要安装5.14.2-6ubuntu2.1”,以及如何解决? 谢谢你的提前。

2 个答案:

答案 0 :(得分:1)

基本上错误消息告诉你所有三个包(libperl-dev,perl和libperl5.14)需要具有完全相同的版本(5.14.2-6ubuntu2或5.14.2-6ubuntu2.1),但你是试图混合两者。我不能告诉你为什么会这样(也许你正试图混合来自不同发行版的包,比如debian testing / unstable),但是如果你使用了aptitude,你可以在交互式依赖解算器中检查这种情况(也许它会自动为您找到一个可接受的解决方案。)

因此,请使用aptitude并检查软件包的版本,包括您尝试安装的软件包和已安装的软件包。

答案 1 :(得分:0)

没有直接回答你的问题,而是避免它出现的方法:

你不应该把你的系统Perl搞砸了。因为很多系统包都依赖于Perl系统。如果你搞砸了,你的系统可能会遇到麻烦。

如果您希望灵活使用Perl安装,请始终使用Perlbrew!转到这个网站,很容易:http://perlbrew.pl/ Perlbrew管理不同的Perls,所有这些都安全地存在于你的$ home中。 (Perlbrew也在CPAN上或以.deb包的形式提供,但是使用上面的网站,它是更安全的)

如果您将此行添加到.bashrc

# Perl is always from perlbrew!
source ~/perl5/perlbrew/etc/bashrc

您可以使用终端上的perlbrew命令轻松切换Perl安装。

也许这可以帮到你? 此致