このブログを検索

2012-08-08

epgdumprにパッチをあてる

以前pt2をインストール手順を記載した際、epgdumprは素のまま入れてパッチをあてませんでした。
今回はubuntuやrecpt1のアップグレードにあわせてパッチを当ててみようと思います。

参考:
http://mizupc8.bio.mie-u.ac.jp/pukiwiki/index.php?%E5%9C%B0%E3%83%87%E3%82%B8%2FKTV-FSUSB2

まずはパッチをダウンロードしてubuntuのワークフォルダにコピーします

http://www.honeyplanet.jp/epgdumpr2-utf8_segv.patch.gz
SEGV対策パッチ

http://www.mediafire.com/2sen
DTV→
up0246.zip
epgdump r2 184byte オーバーフロー修正パッチ (fix_overflow_184.patch)
up0248.zip
epgdump r2 セクション読み込みオーバーフロー修正&ファイルオープン状況確認パッチ
(fix_overflow_maxseclen.patch)



次にパッチを当ててからmake

$ wget "http://www.mda.or.jp/epgrec/index.php?plugin=attach&refer=%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E5%89%8D%E3%81%AE%E6%BA%96%E5%82%99&openfile=epgdumpr2-utf8.tar.gz" -O epgdumpr2-utf8.tar.gz
$ tar -zxvf epgdumpr2-utf8.tar.gz
$ wget http://www.honeyplanet.jp/epgdumpr2-utf8_segv.patch.gz
$ gunzip epgdumpr2-utf8_segv.patch.gz
$ unzip up0246.zip
$ unzip up0248.zip
$ cd epgdumpr2
$ patch -p1 < ../fix_overflow_184.patch
$ patch -p1 < ../fix_overflow_maxseclen.patch
$ patch -p1 < ../epgdumpr2-utf8_segv.patch
$ make

ここでエラーが出た
eit.c:295:31: error: array subscript is above array bounds [-Werror=array-bounds]
cc1: all warnings being treated as errors
make: *** [eit.o] エラー 1

http://baalzephon.dyndns.org/tech/index.php?Linux%2F%E3%83%86%E3%83%AC%E3%83%93%E9%96%A2%E9%80%A3%2Fepgrec
を参考にパッチを当てた
パッチを作りました→epgdumpr2-utf8_arraybounds.zip

ワークフォルダに移動して
$ wget --trust-server-names http://db.tt/iE8qfFka
$ unzip epgdumpr2-utf8_arraybounds.zip
$ cd epgdumpr2
$ patch -p1 < ../epgdumpr2-utf8_arraybounds.patch

リトライ
$ rm *.o
$ make
$ sudo make install
成功!

動作確認
$ recpt1 --b25 --strip 22 30 test.ts
$ epgdump test test.ts - | less


【アースソフト】地デジチューナー PT3 Rev.A
【アースソフト】地デジチューナー PT3 Rev.A
価格:13,860円(税込、送料別)

0 件のコメント:

コメントを投稿