Google-code-prettify

2013/04/30

VortexBoxにインストールされているMPDのconfigureオプションを調べる

VortexBoxにインストールされているMPD(Music Player Daemon)のソースパッケージを取得してspecファイルからコンパイルオプションを調べます


(1) MPDのソースパッケージ(SRPM)の取得を試みるがVortexBoxのインストール直後だとエラーになる

[vortexbox.localdomain mpd]# yumdownloader --source mpd
読み込んだプラグイン:langpacks, presto, refresh-packagekit

〜 省略 〜

No source RPM found for mpd-1.17.2-2.fc16.i686
Nothing to download

[vortexbox.localdomain mpd]#


(2) setup-mplayer コマンドを実行する

ffmpegコマンドがインストール出来ない問題の対策でsetup-mplayerを実行したのですが、MPDのソースパッケージを取得する場合にも必要のようです。

[vortexbox.localdomain mpd]# sudo /usr/local/sbin/setup-mplayer
読み込んだプラグイン:langpacks, presto, refresh-packagekit

 〜 省略 〜

tar: これは tar アーカイブではないようです
tar: 前のエラーにより失敗ステータスで終了します
cp: `essential-20071007/*' を stat できません: そのようなファイルやディレクトリはありません
Done.
[vortexbox.localdomain mpd]#


最後エラーになっていますが、目的は果たせたので先に進みます。


(3) MPDのソースパッケージを取得する

[vortexbox.localdomain mpd]# yumdownloader --source mpd
読み込んだプラグイン:langpacks, presto, refresh-packagekit

〜 省略 〜

mpd-0.17.2-25.src.rpm
[vortexbox.localdomain mpd]#

今度は成功しました。


(4)  取得したMPDのソースパッケージからspecファイルを取り出す

まず作業ディレクトリを作成し移動します。

[vortexbox.localdomain mpd]# mkdir srpm/ 
[vortexbox.localdomain mpd]# cd srpm/

ソースパッケージからファイルを取り出します。

[vortexbox.localdomain srpm]# rpm2cpio ../mpd-0.17.2-25.src.rpm |cpio -id


(5) specファイルを調べる

取り出したmpd.specファイル内でconfigureを実行している箇所を見つけます。

[vortexbox.localdomain srpm]# less mpd.spec

〜 省略 〜

%configure \
           --with-systemdsystemunitdir=%{_unitdir} \
           --enable-wildmidi \
           --enable-fluidsynth \
           --enable-mikmod \
           --enable-bzip2 \
           %{?with_pulse:--enable-pulse} \
           %{!?with_sqlite:--disable-sqlite} \
           --enable-zip \
           --enable-iso9660 \
           --enable-pipe-output \
           --enable-lastfm

〜 省略 〜

0 件のコメント: