web-dev-qa-db-ja.com

mediatombがJavaScriptサポートでコンパイルされないのはなぜですか?

私はしばらくmediatombを使用しており、カスタムの方法でファイルとフォルダーを表示することにしたとき、ubuntu 11.4(サーバー)のmediatombがJavaScriptでコンパイルされていないことがわかりました。

誰かがこの状況に遭遇し、「簡単な」(数ステップ)解決策を見つけましたか?

mediatombをコンパイルして再パックしようとしましたが、依存関係libjsの1つがlibmozjs185 APIになり、ABIが変更されたため、中止しました。

前もって感謝します。

1
Nelstaar

リポジトリライブラリ(libmozjs185)はMediaTombへのSpiderMonkeyのコンパイルをサポートしていないため、MediatombはJavaScriptでコンパイルされません。

振り返ってみると-この特定のビルドレシピはv10.04(lucid)から使用されているため、JavascriptをサポートするDebian MediaTombパッケージを自分で再パックする必要があります。

JavaScriptサポートでの再パックの前提条件

古いライブラリをDebian Sidから「借用」する必要があります。問題のライブラリがインストールされている場合は、それらを削除します。

libmozjs2dとlibmozjs-devをdebian sid配布から取得します: libmozjs2d_1.9.1.16-6_i386.deb および libmozjs-dev_1.9.1.16-6_i386.deb &インストールaライブラリがありません

Sudo apt-get remove libmozjs185*
Sudo apt-get install build-essential libnspr4-0d 
Sudo dpkg -i libmoz*.deb

ソースを取得

Mediatombソースを取得します。

Sudo apt-get build-dep mediatomb
Sudo apt-get source mediatomb

次に、debian/rulesを編集してJavaScriptを有効にします

Sudo nano <mediatombfolder>/debian/rules

Debian/rulesファイルでMEDIATOMB_CONFIG_OPTIONSを検索し、-disable-libjs-enable-libjsに変更します。

バージョンを変更するには、変更ログファイル(同じdebianディレクトリにあります)と "mediatomb.dsc"ファイルも更新する必要があります。

チェックして再梱包

最初:

cd <mediatombfolder>
Sudo ./configure

これにより、コンパイルに必要なすべての前提条件がインストールされていることを確認できます。

最後に:

Sudo dpkg-buildpackage -rfakeroot -us -uc

すべてがうまくいけば、上のフォルダに3つの新しいdebファイルが表示されます。

それらをすべてインストールします。

Sudo apt-get install libjs-prototype
Sudo dpkg -i mediatomb*.deb

ソースに基づく

1
fossfreedom