趣味のプログラム工房

Fedora17でMediatomb! コンパイル&インストール

公開されているパッケージを使ってもよかったのですが、リポジトリにあるパッケージをつかってだと、どうもトランスコード(Transcode)が効かない。


というわけで、ソースを落としてきて自力でコンパイルすることに。
必要なライブラリはいろいろサイトを見たり、configureの結果を見てインストール。

で、いざコンパイルとなると必ずこける。

from ../src/zmmf/zmmf.h:35,
from ../src/autoscan.h:36,
from ../src/autoscan.cc:36:
../src/zmm/object.h:51:32: error: declaration of 'operator new' as non-function
../src/zmm/object.h:51:27: error: expected ';' at end of member declaration
../src/zmm/object.h:51:39: error: expected ')' before 'size'
make[2]: *** [libmediatomb_a-autoscan.o] Error 1

../src/scripting/script.h:69:5: error: ‘JSScript’ does not name a type
../src/scripting/script.h:70:5: error: ‘JSScript’ does not name a type
../src/scripting/script.h:118:5: error: ‘JSScript’ does not name a type
../src/scripting/script.h:119:19: error: ‘JSScript’ has not been declared
make[3]: *** [libmediatomb_a-autoscan.o] Error 1

とか。。。

どうも、コードのバグっぽく、有志によるパッチが出ています。
mediatomb-0.12.1.tonewjs.patch
mediatomb-0.12.1-gcc46.patch
mediatomb-0.12.1.jsparse.patch
libav_0.7_support.patch

とりあえず、自分が当てたのは上4本。
機能の有効の有無によっては、必要のないものもあります。
(configureのオプションしだい)

自分はパッチを探すまでにだいぶ時間がかかってしまいました。
てか、mediatombだれかバージョン上げた品質の高いのを公開してくれ!


ちなみに、一般常識かもしれませんが、
make install はrootで行わないとエラーになります。


だが、結局最後までlibdvdnavを有効に出来なかった、、、
コンパイルが通りません。orz

2012年07月14日