0

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をインストールする必要があります」という意味と、それを解決する方法を誰かに説明してもらえますか?
よろしくお願いします。

4

2 に答える 2

1

基本的に、エラーメッセージは、3つのパッケージ(libperl-dev、perl、libperl5.14)すべてがまったく同じバージョン(5.14.2-6ubuntu2または5.14.2-6ubuntu2.1)である必要があることを示していますが、混合しようとしています二つ。理由はわかりませんが(Debianテスト/不安定など、さまざまなディストリビューションのパッケージを混在させようとしている可能性があります)、aptitudeを使用している場合は、インタラクティブな依存関係ソルバーで状況を調べることができます(おそらくそれは受け入れ可能な解決策を自動的に見つけます)。

したがって、aptitudeを使用して、インストールしようとしているパッケージと既に持っているパッケージの両方のバージョンを調べてください。

于 2012-09-27T09:57:28.487 に答える
0

あなたの質問に対する直接の答えはありませんが、それが起こらないようにする方法:

システムのPerlをいじくり回してはいけません。多くのシステムパッケージがシステムPerlに依存しているためです。これを台無しにすると、システムに問題が発生する可能性があります。

Perlのインストールに柔軟に対応したい場合は、常にPerlbrewを使用してください。このサイトにアクセスすると、非常に簡単です。http: //perlbrew.pl/ PerlbrewはさまざまなPerlを管理し、すべてが安全に$homeにあります。(PerlbrewもCPANにあるか、.debパッケージとして入手できますが、上記のWebサイトを使用すると節約できます)

次に、この行を.bashrcに追加します

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

端末でperlbrewコマンドを使用して、Perlインストールを簡単に切り替えることができます。

多分これはあなたを助けますか?よろしく

于 2012-09-27T09:45:29.823 に答える