未分類

Ubuntu18.04 でmediatombをソースからインストールする(その2)


前回に引き続き、MediatombDLNA Severを構築していたUbuntu 16.04LTS 18.04へアップグレードしたところ、Mediatombが消えてしまったので再構築した際の手順メモです。(前回の記事:Ubuntu18.04 でmediatombをソースからインストールする(その1))

ビルド環境の構築

ソースファイルをビルドする為にbuild-essentialとautoconfをインストールしてビルド環境を構築します。

$ sudo apt install build-essential

$ sudo apt install autoconf

参照:Ubuntu 18.04 Serverへ開発環境をセットアップ

依存パッケージのインストール 1


mediatombビルドする前に、mediatombが依存しているパッケージをあらかじめインストールします。

依存パッケージはUbuntu パッケージの情報を参考にしてインストールしました。


https://packages.ubuntu.com/source/artful/mediatomb

整理するとつぎのとおり。

17.10 依存パッケージ

説明

追加

18.04で追加するパッケージ

dh-autoreconf debhelper add-on to call autoreconf and clean up after the build

x

dh-autoreconf
dh-systemd debhelper add-on to handle systemd unit files – transitional package

x

dh-systemd[universe]
libavformat-dev FFmpeg library with (de)muxers for multimedia containers – development files

x

libavformat-dev[universe]
libavutil-dev FFmpeg library with functions for simplifying programming – development files

x

libavutil-dev[universe]
libcurl4-gnutls-dev development files and documentation for libcurl (GnuTLS flavour)

x

libcurl4-gnutls-dev
libexif-dev library to parse EXIF files (development files)

x

libexif-dev
libexpat-dev 以下のパッケージによって提供される仮想パッケージです: libexpat1-dev

x

libexpat1-dev
libffmpegthumbnailer-dev development files for ffmpegthumbnailer

x

libffmpegthumbnailer-dev[universe]
libflac-dev Free Lossless Audio Codec – C development library

x

libflac-dev
libmagic-dev Recognize the type of data in a file using “magic” numbers – development

x

libmagic-dev
libmysqlclient-dev MySQL database development files

x

libmysqlclient-dev
libsqlite3-dev SQLite 3 development files

x

libsqlite3-dev
libtag1-dev audio meta-data library – development files

x

libtag1-dev
libz-dev 以下のパッケージによって提供される仮想パッケージです: zlib1g-dev

x

zlib1g-dev
pkg-config manage compile and link flags for libraries

x

pkg-config
uuid-dev Universally Unique ID library – headers and static libraries

x

uuid-dev

この中からインストールされてないパッケージを追加していきます。

また、追加するパッケージの中には“universe”のリポジトリを追加する必要があるのも存在するのでリポジトリを追加してからパッケージをインストールします。

(参考:リポジトリ追加)

$ sudo apt-add-repository universe
$ sudo apt update
$ sudo apt install dh-autoreconf dh-systemd libavformat-dev
$ sudo apt install libavutil-dev libcurl4-gnutls-dev libexif-dev
$ sudo apt install libexpat1-dev libffmpegthumbnailer-dev libflac-dev
$ sudo apt install libmagic-dev libmysqlclient-dev libsqlite3-dev
$ sudo apt install libtag1-dev zlib1g-dev pkg-config uuid-dev

依存パッケージのインストール 2

更にビルドする際にあった方がよさそうなライブラリーについてもインストールします。

ここでインストールするライブラリーは無くてもビルドは可能なので必要に応じてインストールしてください。

  • libmp4-v2-dev
    $ sudo apt install libmp4v2-dev
    

mediatombのビルド


$ mkdir source
$ cd source/
$ wget http://archive.ubuntu.com/ubuntu/pool/universe/m/mediatomb/mediatomb_0.12.1-47-g7ab7616.orig.tar.xz
$ tar -xvf mediatomb_0.12.1-47-g7ab7616.orig.tar.xz
  • mediatombのビルド
    $ cd mediatomb-0.12.1-47-g7ab7616/
    $ autoreconf --install
    $ ./configure
    
sqlite3 yes
mysql yes
libjs missing
libmagic yes
inotify yes
libexif yes
expat yes
id3lib disabled
taglib yes
FLAC yes
libmp4v2 not compatible
ffmpeg yes
ffmpegthumbnailer yes
lastfmlib yes
external transcoding yes
curl yes
YouTube yes
db-autocreate yes


configureでは次のような設定になりました。 libmp4v2が”not compatible”となっていますがビルドはできそうなのでそのまま作業を進めます。

$ make
$ sudo make install

インストールが完了すると /usr/local/bin/mediatomb にバイナリーが配置されます。

また、config.xmlについては~/.mediatomb に作成されていました。

mediatombの起動確認

configu.xml に必要な情報を設定したらmediatombを起動して正しく動作する事を確認します。

$ /usr/local/bin/mediatomb
MediaTomb UPnP Server version 0.12.2 - http://mediatomb.cc/
	
	===============================================================================
	Copyright 2005-2010 Gena Batsyan, Sergey Bostandzhyan, Leonhard Wimmer.
	MediaTomb is free software, covered by the GNU General Public License version 2
	
	2018-10-08 03:49:04    INFO: MediaTomb configuration was created in: /home/abc/.mediatomb/config.xml
	2018-10-08 03:49:04    INFO: Loading configuration from: /home/abc/.mediatomb/config.xml
	2018-10-08 03:49:04    INFO: UUID generated: 648f7c48-b52f-4b09-b494-a7ef020e1c65
	2018-10-08 03:49:04    INFO: Checking configuration...
	2018-10-08 03:49:04    INFO: Setting filesystem import charset to UTF-8
	2018-10-08 03:49:04    INFO: Setting metadata import charset to UTF-8
	2018-10-08 03:49:04    INFO: Setting playlist charset to UTF-8
	2018-10-08 03:49:04 WARNING: You enabled the YouTube feature, which allows you
	                             to watch YouTube videos on your UPnP device!
	                             Please check http://www.youtube.com/t/terms
	                             By using this feature you may be violating YouTube
	                             service terms and conditions!
	
	2018-10-08 03:49:04    INFO: Configuration check succeeded.
	2018-10-08 03:49:04 WARNING: Sqlite3 database seems to be corrupt or doesn't exist yet.
	2018-10-08 03:49:04    INFO: no sqlite3 backup is available or backup is corrupt. automatically creating database...
	2018-10-08 03:49:04    INFO: database created successfully.
	2018-10-08 03:49:04    INFO: Initialized port: 49152
	2018-10-08 03:49:04    INFO: Server bound to: 192.168.10.248
	2018-10-08 03:49:05    INFO: MediaTomb Web UI can be reached by following this link:
	2018-10-08 03:49:05    INFO: http://192.168.10.248:49152/

実行すると、上記の情報がコンソールに表示されたので問題なさそうです。

早速、webブラウザでアクセスしてみると無事にmediatombのサービスに接続できました。


libmp4v2が”not compatible” や デーモンが無いなど、いくつか課題が残っていますが、今回はDNLA経由で動画も見れるのでヨシとしました。

たぶん、課題は解決せずにgerberaを利用する方が正解だと思うので次はgerberaの環境を構築してみたいと思います。

コメントを残す