Debianスクイーズにmpd0.17または0.16をインストールするにはどうすればよいですか?バックポートを使用するように提案されましたが、依存関係が満たされていない場合の対処方法がよくわかりませんでした。たとえば、mpd 0.17はwheezy-backportsに存在しますが、squeezeリポジトリで利用可能なものよりも大きいバージョンのライブラリに依存します。バックポートの準備完了パッケージからすべての依存関係を1つずつインストールする必要がありますか(存在する場合)?または、wheezyリポジトリからインストールする必要がありますか?
私のsources.listファイルは次のとおりです。
_#
# deb cdrom:[Debian GNU/Linux 6.0.0 _Squeeze_ - Official Snapshot AMD64 LIVE/INSTALL Binary 20130824-13:07]/ squeeze main non-free
# deb cdrom:[Debian GNU/Linux 6.0.0 _Squeeze_ - Official Snapshot AMD64 LIVE/INSTALL Binary 20130824-13:07]/ squeeze main non-free
deb http://ftp.gr.debian.org/debian/ squeeze main
deb-src http://ftp.gr.debian.org/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main non-free
deb-src http://security.debian.org/ squeeze/updates main non-free
# squeeze-updates, previously known as 'volatile'
deb http://ftp.gr.debian.org/debian/ squeeze-updates main non-free
deb-src http://ftp.gr.debian.org/debian/ squeeze-updates main non-free
# backports
deb http://ftp.gr.debian.org/debian wheezy-backports main contrib non-free
deb http://ftp.gr.debian.org/debian wheezy main contrib non-free
deb http://backports.debian.org/debian-backports/ squeeze-backports main contrib non-free
_
編集:_apt-get source mpd=0.17.6-1~bpo70+1
_でソースを取得できませんでした。 aptは私にこのエラーを与えていました:
_E: Ignore unavailable version '0.17.6-1~bpo70+1' of package 'mpd'
E: Unable to find a source package for mpd
_
_apt-cache showsrc mpd
_はスクイーズバージョンのみを返しました。
編集2:wheezyからバージョン0.16をインストールしようとしています。ソースを入手しましたが、_debuild -uc -us
_を実行すると、満たされていない依存関係に関するエラーが発生しました。 _apt-get build-deps mpd=0.16.7-2
_を使用してdepsをビルドすると、libmp3lame0 (= 1:3.99.5)
が必要であることが返され、_3.98.4+repack2-3~bpo60+1
_があります。
これは、MPDの0.17.6バージョンに対する回答です。
trelosaeはDebianスクイーズで0.17以降を望んでいました。 wheezyのMPDバージョンは0.16.7、wheezyバックポートのバージョンは17.6、testing/unstableのバージョンは0.18.8であるため、これは少し注意が必要です。テスト/不安定化では、パッケージはsqueezeでは使用できないsystemd
を使用するようになり、Debianはwheezyに/run
を使用するように変更されました( リリース目標:ディレクトリの実行 を参照) )、スクイーズには存在しません。したがって、スクイーズで直接ホイージーバックポートを構築することは問題がありました。
後 チャットで多くの議論 、(数日にわたって散らばっていますが、trelosaeの青いアイコンに従ってください)次のことが機能しました-0.17.6元のwheezyで0.16.7MPDパッケージのDebianパッケージを使用しました気まぐれなバックポートからのtarball。元のtarballも上流から入手できたと思います。
詳細:0.16.7と0.17.6の両方のMPDソースディレクトリを並べて解凍した後、0.17.6ソースディレクトリのdebian/
ディレクトリの名前をdebian.orig/
に変更します。次に、debian /ディレクトリを0.16.7ソースディレクトリから0.17.6ソースディレクトリにコピーします。あとは、0.17.6のエントリをdebian.orig/changelog
(0.17.6パッケージ)の一番上のエントリからdebian/changelog
(0.16.7パッケージ)の一番上にコピーするだけです。
その後、ビルドは0.16.7バージョンと同じでした。 debuild -uc -us
いつものように。 (異常に)Debianパッケージはアップストリームコードにパッチを適用しないため、これは簡単でした。
了解しました。@ FaheemMithaと@derobertのおかげで、mpd0.16がスクイーズに取り組んでいます。私がしたことは、apt-get source mpd=0.16.7-2
を使用してwheezyリポジトリからmpdのソースを取得することでした。これを行うには、最初にsources.listファイルにsrcリポジトリを追加する必要があります。ソースファイルが私のようなものである場合は、バックポートを参照する行を次のように変更する必要があります。
deb http://ftp.gr.debian.org/debian wheezy-backports main contrib non-free
deb http://ftp.gr.debian.org/debian wheezy main contrib non-free
に
deb-src http://ftp.gr.debian.org/debian wheezy-backports main contrib non-free
deb-src http://ftp.gr.debian.org/debian wheezy main contrib non-free
Sources.listにバックポートリポジトリがない場合は、上記の2行を(適切な国コードで)追加するだけです。 sources.listファイルを変更した後、apt-get update
を実行します。何が機能したかを確認するには、apt-cache showsrc mpd | less
を実行して、バージョン0.16.7-2がそこにリストされているかどうかを確認します。
表示されない場合は、何か問題があります。戻ってソースを再確認してください。 /etc/apt/sources.list.d/
に問題を引き起こす可能性のある余分な.listファイルがあるかどうかをいつでも確認し、コメントアウトすることができます。
次に、/usr/local/src
に移動し、mpd
およびcd
という名前のディレクトリを作成します。ここで、mpdパッケージのソースをダウンロードしてビルドします。最初にdch -i
を実行して、新しい変更ログエントリを作成し、競合や上書きを作成しないようにします。新しいエントリは次のようになります。
mpd (0.16.7-2.username) UNRELEASED; urgency=low
* Backport to wheezy.
-- User <user@domain> Sat, 01 Mar 2014 22:34:34 +0530
apt-get source mpd=0.16.7-2
を実行すると、ファイルのtarがダウンロードされ、新しいディレクトリmpd-0.16.7
に解凍されます。
cd
をそのディレクトリに移動し、debuild -uc -us
を実行します。満たされていない依存関係に関するエラーが返される場合は、apt-get build-dep mpd
を実行します。おそらく、mpdのsqueezeバージョンのビルド依存関係で十分です。ビルド依存関係をインストールした後、debuild -uc -us
を再度実行します。それでも依存関係エラーが返される場合は、apt-get build-dep mpd=0.16.7-2
を実行し、debuild -uc -us
を使用してパッケージのビルドを再試行してください。
これも失敗する場合は、依存関係を手動でインストールしてみてください。通常のリポジトリで必要な依存関係が見つからない場合は、apt-get install -t squeeze-backports package
を使用してsqueeze-backportsからインストールしてみてください。注:これを行うには、sources.listファイルにsqueeze-backportsが必要です。
deb http://backports.debian.org/debian-backports/ squeeze-backports main contrib non-free
依存関係の問題が事前にソートされたので、debuild -uc -us
を実行すると、親ディレクトリ(この場合は/usr/local/src/mpd/
)に.debパッケージが生成されます。次に、cd ..
を実行してから、dpkg -i name_of_the_generated_package.deb
を実行すると、パッケージがインストールされます。