보류 된 깨진 패키지를 수정하는 방법? libssl-dev : Depends: zlib1g-dev

우분투 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.

보류 된 패키지를 제거하고 올바른 설치 방법은 무엇입니까?



답변

먼저 다음을 입력하십시오.
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

이제 다음 두 명령을 수행하십시오.

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를여 십시오 (Launcher에 있어야합니다. 찾을 수 없으면 터미널에 입력하십시오 synaptic-pkexec).

를 검색하십시오 zlib1g-dev. zlib1g-dev 옆의 상자가 녹색이 아닌 경우 해당 상자를 클릭하고 “설치 표시”를 선택하십시오. 여러 버전이 표시되면을 선택하십시오 1:1.2.8.dfsg-1ubuntu1. 그런 다음을 검색하십시오 libssl-dev. libssl-dev 옆의 상자가 녹색이 아닌 경우 해당 상자를 클릭하고 “설치 표시”를 선택하십시오.

그런 다음 “적용”을 선택하십시오.


답변

패키지와 관련된 모든 파일을 찾아서 제거한 다음 다시 설치해야합니다.

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

모든 파일에 대해 두 번째 명령을 반복 한 다음 다시 설치하십시오.


답변

sudo aptitude install lib_name_depending

libcurl4-openssl-dev우분투 14.04LTS에 설치 하고 싶을 때 나를 위해 일했습니다 .

내 컴퓨터에 여러 종속 라이브러리가 설치되어 있지 않고 aptitude 도구를 사용하여 설치할 수있는 필수 라이브러리 / 패키지를 대화 형으로 설치 / 다운 그레이드 할 수 있습니다 libcurl4-openssl-dev.


답변