web-dev-qa-db-ja.com

パッケージシステムが壊れています。修正方法

私は最近、arduinoを購入しました。ソフトウェアをコンパイルするにはgcc-avr/avrdudeが必要です。少し前に別のマイクロプロセッサコンポーネント用にavrをインストールしましたが、明らかに古いバージョン(gccバージョン3.3 20030512(プレリリース))であるため、これらを更新しましたが、機能しませんでした。

(事前に、不完全なワインのインストールでaptdaemonを壊しました(フォントのインストール契約に合格できませんでした)が、再インストールして修正し、契約に同意したことに注意してください。)

bingo's build script を実行してこれらを更新しようとしていますが、必要な依存関係は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が必要です:)ところで、私のシステムはUbuntu 11.04です

50
Vigi

エラーが発生したら、Sudo apt-get -f installを試して、エラーのためにロードされなかったファイルを強制的にインストールします。

次に、エラーのあるパッケージのみが残るまで、Sudo apt-get updateをもう一度、Sudo apt-get -f installを繰り返し試してください。

Sudo dpkg --configure -a

キャッシュを消去します

Sudo apt-get clean

41
Ringtail

これは通常、「インストール済みパッケージの依存関係が満たされていない」ために発生します。

「Synaptic」がインストールされている場合の簡単なソリューションは次のとおりです。

  • Synapticを開きます。
  • (ステータス)(左側のナビゲーション)に移動します。
  • 「壊れた」を選択します。
  • これらの壊れたパッケージを削除します。

それ以外の場合は、CLIで処理できます。

ターミナルを開き、次のコマンドを実行します。

Sudo apt-get clean

上記のコマンドは、取得したパッケージファイルのローカルリポジトリを消去します。

Sudo apt-get install -f

壊れた依存関係を修正します。つまり、-fは「fix broken」を表します。

Sudo dpkg --configure -a

まだ設定されていないすべてのパッケージ(-a)を設定します。最後に、更新コマンドSudo apt-get updateを実行します。

21
Nabeel Ahmed

オープン シナプス Install synaptic 。次に、ステータスに移動して、Brokenを選択します。次に、破損したパッケージを完全に削除します。

これでシステムが修正されます。

enter image description here

16
user61928

試してください:Sudo apt-get update && Sudo apt-get -f install
これで問題が解決することを願っています。

3
Frantique

同じ問題があった、

Sudo apt-get clean

その後に

Sudo apt-get update

その後に

Sudo apt-get upgrade -f

それを修正しました。これがお役に立てば幸いです!

1
user152730

まだの場合は、パッケージリポジトリの参照を「メイン」または米国に変更してみてください。これを行うことで、Python-devのunmet-dependenciesの問題が解決されました(以前、イギリスのパッケージリポジトリを使用して12.04をインストールwas)。

  1. 「Ubuntu Software Center」(USC)で、メニュー/タブ「Edit => Software Sources」に移動します。
  2. [ダウンロード元]ドロップダウン値を[メインサーバー]または米国のサーバーに変更します。
  3. USCを離れ、Ubuntuのプログラムメニューから「Update Manager」を開き、ソフトウェアアップデートの「Check」を選択します(または、ターミナルウィンドウで「Sudo apt-get update」を発行します)。
  4. 通常どおりにソフトウェアを更新します。ターミナルの「Update Manager」またはapt-get/aptitude経​​由。

これによりリポジトリが修復され、通常どおりに必要なものをインストールしました。

上記の手順で問題を修正する前に、さまざまなaptitude/apt-getコマンドは、多くのパッケージを削除することを提案しましたが、わかりやすいように、6か月以上のパッケージ追加を失うことを望んでいませんでしたが、それでも時々パッケージリストのスナップショットを撮ります(ヒントについては Gist をご覧ください)!ここに残している指示を知って本当にうれしいです。

お役に立てれば。

1
Big Rich