web-dev-qa-db-ja.com

保持されている壊れたパッケージを修正する方法は?

Libssl-devをubuntu 14.04.2にインストールしようとしています

$ make
fatal error: openssl/sha.h: No such file or directory
compilation terminated.

$ Sudo apt-get install libssl-dev
The following packages have unmet dependencies:
 libssl-dev : Depends: zlib1g-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

$ Sudo apt-get install zlib1g-dev
The following packages have unmet dependencies:
 zlib1g-dev : Depends: zlib1g (= 1:1.2.3.4.dfsg-3ubuntu4) but 1:1.2.8.dfsg-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.

保持されたパッケージを削除して正しいものをインストールするにはどうすればよいですか?

25
Sam Healey

まず、これを入力してみてください:Sudo dpkg --configure -a

これは、壊れた依存関係を修正するのに大いに役立ちます。それでも不十分な場合は、Sudo apt-get install -fを試してください。

次に、クリーンアップして更新します:Sudo apt-get clean && Sudo apt-get update

次にアップグレードします:Sudo apt-get upgrade(アップグレードするには「y」と言います)

一部のパッケージが「保留」されているというメッセージが表示された場合は、次のようにします。

Sudo apt-get dist-upgrade

次に、次の2つのコマンドを実行します。

Sudo apt-get purge zlib1g-dev
Sudo apt-get autoremove

次に、入力するとどうなるかを確認します:Sudo apt-get install libssl-dev

それでも機能しない場合は、次を試してください。

Sudo aptitude install libssl-dev zliblg-dev=1:1.2.8.dfsg-1ubuntu1

それでも機能しない場合は、Synaptic Package Managerを開きます(ランチャーにあるはずです。見つからない場合は、ターミナルでsynaptic-pkexecと入力してください)。

zlib1g-devを検索します。 zlib1g-devの横にあるボックスが緑色でない場合は、それをクリックして、「Mark for installation」を選択します。複数のバージョンが表示される場合は、1:1.2.8.dfsg-1ubuntu1を選択してください。次に、libssl-devを検索します。 libssl-devの横のボックスが緑色でない場合は、それをクリックして、「インストール用にマーク」を選択します。

次に、「適用」を選択します。

20
gracious1

パッケージに関連するすべてのファイルを探して削除し、再インストールする必要があります。

Sudo dpkg --list
Sudo apt-get purge "file-name"

すべてのファイルで2番目のコマンドを繰り返し、再インストールします。

2
Alex

この問題が発生し、次のように修正しました:1)ソフトウェアと更新ユーティリティを開きます2)[更新]タブに移動します3)すべてのオプションが選択されていることを確認します:

+ Important security updates
+ Recommended updates
+ Unsupported updates

4)Sudo apt update && Sudo apt upgrade

5)再起動

0
Fedorov7890
Sudo aptitude install lib_name_depending

インストールしたいときに私のために働いたlibcurl4-openssl-dev私のUbuntu 14.04LTSで。

いくつかの依存ライブラリが私のマシンにインストールされていませんでした。aptitudeツールを使用して、必要なlibs/packageをインタラクティブにインストール/ダウングレードして、libcurl4-openssl-dev

0
Danijel Hodzic

私がそれを修正した方法は、壊れたパッケージと言ったときで、その上にパッケージがリストされていました。私はSudo apt-get install(パッケージ名)を実行し、次にSudo apt-get upgradeを実行しましたが、うまくいきました!

0
user393214