패키지 시스템이 고장났습니다. 고치는 방법?


50

방금 최근 arduino를 구입했으며 소프트웨어를 컴파일하려면 gcc-avr / avrdude가 필요합니다. 얼마 전에 다른 마이크로 프로세서 구성 요소에 avr을 설치했지만 분명히 오래된 버전 (gcc 버전 3.3 20030512 (시험판))이므로 계속 업데이트했지만 작동하지 않았습니다.

(이전에 사전에 불완전한 와인 설치 (글꼴 설치 계약을 통과하지 못함)를 통해 앱 테몬을 깨뜨 렸지만 다시 설치하여 계약을 수락 한 것을 수정했습니다.)

빙고의 빌드 스크립트 를 실행하여 업데이트하려고 하지만 avr로 인해 필요한 종속성을 설치할 수 없습니다 ... 터미널 보고서

Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version.
libncurses5-dev is already the newest version.
libncurses5-dev set to manually installed.
libusb-0.1-4 is already the newest version.
libx11-dev is already the newest version.
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
arduino-core : Depends: gcc-avr but it is not going to be installed
avr-libc : Depends: gcc-avr (>= 1:4.3.4) but it is not going to be installed
Depends: binutils-avr (>= 2.20) but it is not going to be installed
binutils-dev : Depends: binutils (= 2.21.0.20110327-2ubuntu3) but 2.21.0.20110327-2ubuntu2 is to be installed
libcwidget-dev : Depends: libcwidget3 (= 0.5.16-3ubuntu2) but it is not going to be installed
Depends: libsigc++-2.0-dev but it is not going to be installed
Depends: libncursesw5-dev but it is not going to be installed
libmpfr-dev : Depends: libgmp3-dev (>= 4.2.dfsg-1) but it is not going to be installed
python-dev : Depends: python (= 2.7.1-0ubuntu5.1) but 2.7.1-0ubuntu5 is to be installed
Depends: python2.7-dev (>= 2.7.1-1~) but it is not going to be installed
tk8.4-dev : Depends: tk8.4 (= 8.4.19-4) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

그러나 달리기

apt-get -f install

결과

(Reading database ... 163021 files and directories currently installed.)
Unpacking binutils-avr (from .../binutils-avr_2.20.1-1ubuntu2_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/binutils-avr_2.20.1-1ubuntu2_i386.deb (--unpack):
trying to overwrite '/usr/bin/avr-size', which is also in package avr-binutils 2.13.90.030512-2
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Unpacking gcc-avr (from .../gcc-avr_1%3a4.3.5-1_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/gcc-avr_1%3a4.3.5-1_i386.deb (--unpack):
trying to overwrite '/usr/bin/avr-g++', which is also in package avr-gcc-c++ 3.2.90.20030512-2
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/binutils-avr_2.20.1-1ubuntu2_i386.deb
/var/cache/apt/archives/gcc-avr_1%3a4.3.5-1_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

업데이트 관리자를 실행하고 시스템을 통해 시스템을 업데이트하려고했지만 오류 메시지 만 있습니다.

The following packages have unmet dependencies:
arduino-core: Depends: gcc-avr but it is not installed
avr-libc: Depends: gcc-avr (>= 1:4.3.4) but it is not installed
Depends: binutils-avr (>= 2.20) but it is not installed

그런 다음 apt-get -f install을 실행 해 보도록 지시합니다. 이는 마지막 시간과 동일합니다.

그래서 어떻게 시스템을 고칠 수 있습니까? 정말로 새로운 avr이 필요합니다. :) BTW, 내 시스템은 Ubuntu 11.04입니다.


시스템에 시냅틱이 설치되어 있습니까?!

예, 왜요? 안 돼요?
Omer

같은 오류 (하지만 기반 libboost). 어떤 대답도 나를 위해 일하지 않았습니다.
isomorphismes

답변:


41

해당 오류가 발생 sudo apt-get -f install하면 오류로 인해로드되지 않은 파일을 강제로 설치하십시오.

그런 다음 오류가있는 패키지 만 남을 때까지 앞뒤로 sudo apt-get update다시 시도 하십시오 sudo apt-get -f install.

sudo dpkg --configure -a

캐시를 청소하십시오

sudo apt-get clean


3
답변에 감사드립니다. 그러나 PI를 게시 한 것처럼 솔루션을 찾았습니다 .PI는 시냅틱 패키지 관리자를 열고 SPM으로 제거한 두 개의 깨진 패키지를 걸러 냈습니다. 이제 모든 것이 달콤하고 매끄 럽습니다. 의존성을 설치하고 빙고 스크립트를 사용하여 avr을 설치하고 있습니다! :) 아직 끝나지 않았지만 실패하면 대답을 시도 할 것입니다
Vigi

수정 된 소식을들을 수 있음
Ringtail

좋아, 방금 11.04 파티션을 삭제하고 새로 설치했습니다 11.10. 이제 Windows Vista와 함께 실행하십시오. 이제 최신 avr / binutils / libs 등이 설치되었습니다. 이제 arduino 용으로 컴파일 할 수 있습니다 :) yay!
Vigi

이 문제의 결과로 마우스 드라이버와 WLAN 드라이버를로드하지 못했습니다. 즉, 더 이상 인터넷에 연결되어 있지 않아 사용할 수 없습니다 sudo apt-get -f install.
John Slegers

21

이는 일반적으로 '설치된 패키지에 대한 충족되지 않은 종속성'의 결과로 발생합니다.

'Synaptic'을 설치 한 경우 간단한 해결책은 다음과 같습니다.

  • 시냅틱을 엽니 다.
  • 왼쪽 탐색에서 '상태'로 이동하십시오.
  • 'Broken'을 선택하십시오.
  • 이 깨진 패키지를 제거하십시오.

그렇지 않으면 CLI를 통해 처리 할 수 ​​있습니다.

터미널을 열고 다음 명령을 실행하십시오.

sudo apt-get clean

위의 명령은 검색된 패키지 파일의 로컬 저장소를 정리합니다.

sudo apt-get install -f

깨진 종속성을 -f수정합니다. 즉 , "수정 된 오류"를 나타냅니다.

sudo dpkg --configure -a

-a아직 구성되지 않은 모든 패키지를 구성합니다. 결국 update 명령을 실행하십시오 sudo apt-get update.


이 문제의 결과로 마우스 드라이버와 WLAN 드라이버를로드하지 못했습니다. 즉, 더 이상 인터넷에 연결되어 있지 않아 사용할 수 없습니다 sudo apt-get -f install.
John Slegers

오프라인 / 휴대용 패키지 관리자 (예 : Keryx 또는 Cube)를 사용할 수 있습니다. 인터넷 연결 (Linux 또는 Windows)이있는 다른 컴퓨터에서 패키지 및 최신 리포지토리 (폴더 또는 펜 드라이브로 직접 다운로드)를 다운로드 할 수 있습니다. 인터넷에 연결되지 않은 컴퓨터에서 다운로드 한 패키지를 설치하십시오.
Nabeel Ahmed

큐브를 사용하기위한 단계별 튜토리얼 (그것을 자신을 사용하지 않은) - community.linuxmint.com/tutorial/view/1583
나빌 아메드

단계별 Keryx 설정을 사용한 또 다른 askubuntu 답변 -askubuntu.com/a/181913/58950
Nabeel Ahmed

내가 사용하는 바로 해결할 수 있었다 sudo apt-get install -f그리고 sudo dpkg --configure -a내가 네트워크, 오디오를 가지고 그렇게 :)에 다시 부팅 한 후 ..
누가 복음

16

시냅틱을시냅틱 설치 엽니 다 . 그런 다음 status로 이동하여 Broken을 선택하십시오 . 그런 다음 손상된 패키지를 완전히 제거하십시오.

시스템을 수정해야합니다.

여기에 이미지 설명을 입력하십시오


우분투 12.04에 있습니다. Synaptics Software Center를 개설하자마자 카탈로그가 고장 났다고 말하고 수리해야하며 수리 버튼을 제공하여 문제를 즉시 해결했습니다.
Tyler Collier

3

시도 : sudo apt-get update && sudo apt-get -f install
문제가 해결되기를 바랍니다.


2
나를 해결하지 못했습니다.
Damien Roche

이 문제의 결과로 마우스 드라이버와 WLAN 드라이버를로드하지 못했습니다. 즉, 더 이상 인터넷에 연결되어 있지 않아 사용할 수 없습니다 sudo apt-get -f install.
John Slegers

1

아직 패키지 저장소 참조를 'Main'또는 United States로 변경하십시오 . 이렇게하면 Python-dev unmet-dependencies 문제가 해결되었습니다 (12.04 설치 이전에 영국 패키지 저장소를 사용하고 있었습니다 ).

  1. 'Ubuntu Software Center'(USC)에서 메뉴 / 탭 'Edit => Software Sources'로 이동하십시오.
  2. 'Download from'드롭 다운 값을 'Main Server'또는 미국의 서버로 변경하십시오.
  3. USC를 그대로두고 Ubuntu의 프로그램 메뉴에서 '업데이트 관리자'를 열고 소프트웨어 업데이트를 '확인'하십시오 (또는 터미널 창에서 'sudo apt-get update'를 발행하십시오).
  4. 예를 들어 'Update Manager'또는 터미널의 apt-get / aptitude를 통해 정상적으로 소프트웨어를 업데이트하십시오.

이로 인해 저장소가 복구되었고 나중에 정상적으로 필요한대로 설치했습니다.

위의 지침으로 내 문제를 수정하기 전에 다양한 적성 / 적응 명령으로 많은 패키지를 제거 할 것을 제안했지만, 당신이 예측할 수 있듯이 6 개월 이상의 패키지 추가를 잃어 버리는 것을 좋아하지 않았습니다. 패키지 목록을 때때로 스냅 샷합니다 ( 힌트는 요지 참조)! 내가 여기서 떠나는 지침에 대해 알게되어서 정말 기쁩니다.

도움이 되었기를 바랍니다.


1

같은 문제가 있었다

sudo apt-get clean

뒤에

sudo apt-get update

뒤에

sudo apt-get upgrade -f

고쳤다. 이게 도움이 되길 바란다!


1
이 문제의 결과로 마우스 드라이버와 WLAN 드라이버를로드하지 못했습니다. 즉, 더 이상 인터넷에 연결되어 있지 않아 사용할 수 없습니다 sudo apt-get -f install.
John Slegers
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.