Raspberry Pi(Raspbian "wheezy")のMPDを最新版のソースコードからアップデートする方法

初出:2013/04/10
改訂:2015/02/11

Raspberry Pi(Raspbian "wheezy")のMPDは、公式パッケージからインストールすると、v0.16です。これをソースコードから最新バージョンにアップデートする方法を紹介します。

関連記事

リンク集

準備

注意:
Raspbianのバージョンは「2014-12-24-wheezy-raspbian」を想定しています。
注意:
MPDはすでにパッケージでインストール済みで(apt-get install mpd)、設定も完了して音が出る状態という前提でアップデートします。クリーンインストールではありません。
注意:
root権限で作業するので、事前にrootでログインできるように「sudo passwd root」でrootのパスワードを設定しておいてください。
  1. rootになります。
  2. 
    pi@raspberrypi:~$ su -
    
    
  3. コンパイルするための開発環境をインストールします。
  4. 
    root@raspberrypi:~# apt-get install build-essential
    
    
    ※既に最新パッケージが入っている場合は、インストールは行われません。
  5. ソースコードの作業用ディレクトリに移動します。
  6. 
    root@raspberrypi:~# cd /usr/src
    root@raspberrypi:/usr/src#
    
    
  7. MPDのソースコードをダウンロードします。
  8. ※バージョンは一例ですので、配布先を見て選んでください。今回は、0.19.9を使います。
    ソースコード配布先:http://www.musicpd.org/download/mpd/stable/
    
    root@raspberrypi:/usr/src# wget http://www.musicpd.org/download/mpd/stable/mpd-0.19.9.tar.xz
    root@raspberrypi:/usr/src# tar xvJf mpd-0.19.9.tar.xz
    root@raspberrypi:/usr/src# ls
    mpd-0.19.9  mpd-0.19.9.tar.xz
    
    
    ※mpdのバージョン変更履歴は「http://git.musicpd.org/cgit/master/mpd.git/plain/NEWS」をご覧ください。
  9. インストール済みMPDのパッケージをアンインストールします。
  10. 
    root@raspberrypi:/usr/src# apt-get remove mpd
    
    
  11. aptのsources.listにソースコードのレポジトリ(deb-src)を追記します。
  12. 
    root@raspberrypi:/usr/src# nano /etc/apt/sources.list
    
    deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi
    #↓この行を追記
    deb-src http://archive.raspbian.org/raspbian wheezy main contrib non-free rpi
    
    
  13. apt-get updateします。
  14. 
    root@raspberrypi:/usr/src# apt-get update
    
    
  15. MPDパッケージに利用されているライブラリのソースコードをダウンロードします。
  16. 
    root@raspberrypi:/usr/src# apt-get build-dep mpd
    
    

MPDの作成

  1. MPDをコンパイルするための各種ライブラリをインストールします。
  2. 
    root@raspberrypi:~# apt-get install libglib2.0-dev libboost-dev libicu-dev
    
    
  3. ソースコードからMPDを作成します。
  4. 
    root@raspberrypi:/usr/src# cd mpd-0.19.9
    root@raspberrypi:/usr/src/mpd-0.19.9## make clean
    root@raspberrypi:/usr/src/mpd-0.19.9## ls
    aclocal.m4  config.guess  configure     depcomp  install-sh   Makefile.in     NEWS     src
    AUTHORS     config.h.in   configure.ac  doc      m4           missing         README   test
    autogen.sh  config.sub    COPYING       INSTALL  Makefile.am  mpd.service.in  scripts  UPGRADING
    root@raspberrypi:/usr/src/mpd-0.19.9# ./configure
    (略)
    MPD is ready for compilation, type "make" to begin.
    root@raspberrypi:/usr/src/mpd-0.19.9#
    root@raspberrypi:/usr/src/mpd-0.19.9# make install
    (略)
    make[1]: Leaving directory `/usr/src/mpd-0.19.9'
    root@raspberrypi:/usr/src/mpd-0.19.9#
    
    
    
    ※「./configure」の途中でライブラリが見つからずに止まる場合があります。その際は、apt-get installで不足するライブラリのパッケージを入れてください。
    ※「make install」が完了するまでに数十分間かかります。気長に待ちましょう。
  5. バージョンを確認します。
  6. 
    root@raspberrypi:/usr/src/mpd-0.19.9# mpd -V
    Music Player Daemon 0.19.9
    
    
  7. 作成したMPDが起動スクリプトから起動するようにリンクを張ります。
  8. 
    root@raspberrypi:/usr/src/mpd-0.19.9# whereis mpd
    mpd: /usr/src/mpd-0.19.9/mpd.service /etc/mpd.conf /usr/local/bin/mpd
    root@raspberrypi:/usr/src/mpd-0.19.9# ln -s /usr/local/bin/mpd /usr/bin/mpd
    
    
    ※実際のMPD実行ファイルの場所は「/usr/local/bin/mpd」ですが、起動スクリプト(/etc/init.d/mpd)には「DAEMON=/usr/bin/mpd」と記述されているので、そこに合わせるためにリンクを張ります。
  9. 「playlists」ディレクトリを作成します。
  10. 
    root@raspberrypi:/usr/src/mpd-0.19.9# mkdir /var/lib/mpd/playlists
    
    
    ※playlistsの設定場所は、「/etc/mpd.conf」の「playlist_directory」に記述されています。
  11. MPDを起動します。
  12. 
    root@raspberrypi:/usr/src/mpd-0.19.9# /etc/init.d/mpd start
    [ ok ] Starting Music Player Daemon: mpd.
    
    
    ※playlistsディレクトリがない場合は、「[....] Starting Music Player Daemon: mpdFailed to stat directory "/var/lib/mpd/playlists": No such file or directory」というようなエラーメッセージが出ます。
    ※「db: Tag list mismatch, discarding database file」というエラーが出た場合は、データベースを作り直す必要があります。「mpc update」してから、「mpc clear」でプレイリストを消去してください。
  13. プレーヤーで再生してみましょう。

以上。

改訂履歴

2015/02/11

2014/06/27

2013/12/27

2013/04/10


copyright © 2015 H'Imagine. All rights reserved.