ppa:cassou / emacsからEmacs 24をインストールできません


8

次の指示に従ってEmacs 24をマシンにインストールしました(借用元:http : //www.mikeyboldt.com/2011/11/30/install-emacs-24-in-ubuntu/):

sudo add-apt-repository ppa:cassou/emacs
sudo apt-get update
sudo apt-get install emacs-snapshot

しかし、次のエラーが発生します。

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
emacs-snapshot : Depends: libgnutls26 (>= 2.12.6.1-0) but 2.10.5-1ubuntu3 is to be installed
Depends: libmagickcore4 (>= 8:6.6.9.7) but it is not installable
Depends: libmagickwand4 (>= 8:6.6.9.7) but it is not installable
E: Unable to correct problems, you have held broken packages.

1
sudo apt-get install -fやってみる?
jrg

運が悪い。sudo apt-get install -fを実行してからsudo apt-get autoremoveを実行しても、同じエラーが発生します。
ケビンアルブレヒト

私はこれとまったく同じ問題に直面しています。
GeneralBecos 2012

アップデート後にもう一度試したところ、うまくいきました!
GeneralBecos 2012

回答:


5

昨日も同じエラーがありました。私はすべてのemacsパッケージをリポジトリにインストールしようとしましたが、それがうまくいかなかったとき、おそらく競合が問題であると思いました。うまくいくemacs23かどうかemacs-snapshotは必要なかったので、次のようにしました。

すべてのEmacsパッケージをアンインストールする

先に進む前に、 `sudo apt-cache search emacs 'を発行して、インストールされる可能性のあるemacsパッケージを確認してください。出力のすべてを犠牲にすることができる場合は、次の提案に進んでください。

sudo apt-get remove `apt-cache search emacs | awk '{print $1}'` --purge

保持したい出力に何か他のものが表示された場合、不要なものを取り除く簡単な方法は、コマンドの出力をファイルにリダイレクトし、そのファイルを編集してから、の引数のファイルapt-get remove

  1. sudo apt-cache search emacs > remove.txt
  2. 保持したいremove.txtパッケージの行を削除して編集します。ここでの目標は、emacs関連のすべてのものを取り除くことです。そのため、それらのパッケージをファイルに残します。
  3. sudo cat remove.txt | xargs apt-get remove --purge

emacs-snapshotが正しくインストールされなかったため、ここでエラーが発生する場合があります。その場合は、最初に壊れたパッケージを強制的にインストールしてから、それらを削除パージすることにより、それらのパッケージを手動でアンインストールしてみてください。

sudo apt-get -f install # don't list packages here
sudo apt-get remove emacs-snapshot --purge

それはにも、おそらく良いアイデアだautocleanautoremove

sudo apt-get autoclean
sudo apt-get autoremove

Emacs 24をインストールする

sudo apt-get install emacs-snapshot

これは、PPAが正しく追加されていることを前提としています(私はcassou PPAも使用しています)。今ではすべてがうまく機能しているようです!

試す aptitude

最初にこの回答を書いてaptitudeから、コマンドラインでパッケージを管理する方法に移動しました。発行から得られるグラフィカルインターフェイス(ncurses)は好きではないsudo aptitudeので、さまざまなデスクトップ環境で実験して残った依存関係や競合を解決する必要がある場合にのみ使用します。ほとんどの場合、私はのように、のドロップイン置換として単に使用apt-getsudo aptitude install [package]ます。

関連:aptitudeはapt-getよりも優れていると見なされていますか?


12.04ではこれを行わないでしょうsudo apt-get remove apt-cache search emacs | awk '{print $1}'--purge私はそれを始めましたが、ubuntu banshee unity geanyの半分と他の291mbのubuntu全体を削除したかったのです。
5

そのブラインドをすることは望ましくないことに同意します。apt-cache search emacs先に進む前にの出力を確認することを提案するために、私の回答を編集しました。私にとって、これは問題を解決した唯一の解決策でした。何かを再インストールする必要があったことは覚えていませんが、エラーが発生した場合は、パッケージマネージャーで簡単に修正できます。
jrhorn424 2012年

@ jrhorn424は、このコマンド「sudo apt-get remove apt-cache search emacs | awk '{print $1}'--purge」を実行できません。
伝説:

2

このPPAからEmacsをインストールし、依存関係を確認しました。Ubuntu 11.10はそのままでこのPPAで動作するため、問題は発生しません。次に、emacs-snapshotの依存関係のリストを示します。

emacs-snapshot-bin-common (= 1:20111227-1~ppa1~oneiric1)libasound2 (>> 1.0.24.1), libc6 (>= 2.11), libcairo2 (>= 1.2.4), libdbus-1-3 (>= 1.1.1), libfontconfig1 (>= 2.8.0), libfreetype6 (>= 2.2.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libgif4 (>= 4.1.4), libglib2.0-0 (>= 2.26.0), libgnutls26 (>= 2.9.11-0), libgpm2 (>= 1.20.4), libgtk-3-0 (>= 3.0.0), libice6 (>= 1:1.0.0), libjpeg62 (>= 6b1), libm17n-0 (>= 1.6.1), libmagickcore3 (>= 8:6.6.0.4), libmagickwand3 (>= 8:6.6.0.4), libncurses5 (>= 5.5-5~), libotf0 (>= 0.9.11), libpng12-0 (>= 1.2.13-4), librsvg2-2 (>= 2.14.4), libselinux1 (>= 1.32), libsm6, libtiff4, libtinfo5 (>= 5.6+20070908), libx11-6, libxft2 (>> 2.1.1), libxml2 (>= 2.7.4), libxpm4, libxrender1

何かが依存関係のごまかしです。PPAを無効にし、apt-get updateとupgradeを実行してから、apt-get cleanを実行してから、PPAを再度有効にして試してみます。


1

参考までに、Precise Pangolin 12.04では、次のようにして簡単に実行できます。

sudo add-apt-repository ppa:cassou/emacs
sudo apt-get update
sudo apt-get install emacs-snapshot

そのまま使用できます。


「すぐに使える」とは、フレッシュインストールを意味しますか?であるemacsあなたがインストールしたときにすでに存在しますかemacs-snapshot
jrhorn424 2012

すみません、つまり、これらのコマンドを指定すると、他の介入なしで機能します。
レナードヴァーティゲル

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.