のrpm作成。
ソースはsvnからもってきた一番新しいので行ってみる。
この記事には問題があります。この記事の通りに実行する場合は最後の追記を部分を見てください。
9/8 21:43さらに追記
11/8 差分の書き方を修正
11/15 fedora9向けに追記(configureの部分)
// ソースのDL
# cd /usr/local/src
# svn co https://svn.mediatomb.cc/svnroot/mediatomb/trunk/mediatomb mediatomb
# cd mediatomb
// configure
# autoconf --version
2.61じゃない時はソースひろってきて/usr/localにインストールしておいて/usr/binにシンボリックリンクでも張っておく
# autoreconf -i
configureファイルができる
# ./configure --disable-ffmpegthumbnailer
これで環境にある程度あったspecファイルができる
fedora9で、ffmpeg-develをfreshrpmsからインストールした場合下記のconfigureの結果のffmpegがmissingになるので、以下のようにすればいい。
# ./configure --disable-ffmpegthumbnailer --with-avformat-h=/usr/include/ffmpeg
CONFIGURATION SUMMARYを見て
sqlite3 : yes → sqlite-devel
mysql : yes → mysql-devel
libjs : yes → js-devel
libmagic : yes →file (f9:file-devel)
inotify : yes
libexif : yes → libexif-devel
id3lib : disabled
taglib : yes → taglib-devel
libmp4v2 : yes → libmp4v2-devel
ffmpeg : yes → ffmpeg-devel
ffmpegthumbnailer : disabled
external transcoding : yes
curl : yes → curl-devel
YouTube : yes
SopCast : disabled
libextractor : disabled
db-autocreate : yes
こんな感じになるように必要なlib*-develをインストールする。
参考程度に右側にパッケージ名を入れておきました。rpmforge(f9:livna, freshrpms)のもあるので注意。
// specファイルの修正
# vi mediatomb.spec
2行目
-%define version 0.12.0
+%define version rev1924
6行目(f9の場合だけ)
-%configure –enable-taglib
+%configure –disable-ffmpegthumbnailer –with-avformat-h=/usr/include/ffmpeg –enable-taglib
13-14行目
-Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-BuildRequires: sqlite-devel, mysql-devel, libexif-devel, taglib-devel, file-devel, js-devel, zlib-devel
+Buildroot: %{_tmppath}/%{name}-%{version}-root-%(%{__id_u} -n)
+BuildRequires: sqlite-devel, mysql-devel, libexif-devel, taglib-devel, file, js-devel, zlib-devel
CentOS5ではfile-develがない・・・→fileに含まれている
62-65行目を削除
-getent group mediatomb >/dev/null || groupadd -r mediatomb
-getent passwd mediatomb >/dev/null || \
-useradd -r -g mediatomb -d %{_sysconfdir}/mediatomb -s /sbin/nologin \
– -c “To run Mediatomb” mediatomb
※nobodyにするつもりなので不必要
// initの修正
# cd scripts
# vi mediatomb-service-fedora
53行目
-chown mediatomb $MT_PIDFILE
+chown nobody $MT_PIDFILE
56行目
-chown mediatomb “/$MT_HOME/$MT_CFGDIR”
+chown nobody “/$MT_HOME/$MT_CFGDIR”
// configの修正
# cd config
# vi mediatomb-conf-fedora
7行目
-MT_INTERFACE=”NOT_SET”
+MT_INTERFACE=”eth0″
16-17行目
-MT_USER=”mediatomb”
-MT_GROUP=”mediatomb”
+MT_USER=”nobody”
+MT_GROUP=”nobody”
// rpm作成
# cd /usr/local/src
# mv mediatomb mediatomb-rev1924
# tar czvf mediatomb-rev1924.tar.gz mediatomb-rev1924
# mv mediatomb-rev1924.tar.gz /usr/src/redhat/SOURCES/
# cd mediatomb-rev1924
# rpmbuild -ba mediatomb.spec
// インストール
# rpm -ivh /usr/src/redhat/RPMS/i386/mediatomb-0.12.0-8.i386.rpm
# vi /etc/mediatomb.conf
MT_INTERFACE=”eth*”
追記:この後サービス起動してみたが、やはりfile-develがなかったせいでWebUIからファイルを追加するとエラーがでて動かなかった。
f9でbuildしたらちゃんと動いたので、ソースからbuildしたい人はそこらへんのOSを使う必要がありそうです。
そのときは、specファイルの14行目の修正は必要ありません。
9/8 21:43 CentOS5でもちゃんと動作を確認。packageを全部入れなおしてみたら直ったのでそこら辺で何かあったみたいです。
「CentOS5 fedora9 で mediatomb」への1件のフィードバック