Ubuntu 14.04.2にlibssl-devをインストールしようとしています。
$ 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.
アーカイブされたパッケージを削除して正しいパッケージをインストールするにはどうすればよいですか?
ベストアンサー1
まず、次のように入力してください。
sudo dpkg --configure -a
これは、破損した依存関係を回復するのに大きな助けになります。十分でない場合は、以下を試してください。
sudo apt-get install -f
その後、クリーンアップして更新します。
sudo apt-get clean && sudo apt-get update
それからアップグレードしてください。 (
sudo apt-get upgrade
アップグレードするには「はい」と言ってください)
特定のパッケージが「保留」になったというメッセージが表示された場合は、次のことを実行する必要があります。
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-pkexec
。)
探すzlib1g-dev
。 zlib1g-dev の横のボックスが緑色でない場合は、そのボックスをクリックして「インストールの表示」を選択します。複数のバージョンが表示されている場合は、1つを選択してください1:1.2.8.dfsg-1ubuntu1
。その後、libssl-dev
libssl-devの横のボックスが緑色でない場合は、そのボックスをクリックして「Mark for Installation」を選択します。
次に、適用を選択します。