2012年09月26日

gentooでのpt2設定保存版 gentoo二世

pt2の設定で、たいへんお世話になったサイト:
http://d.hatena.ne.jp/m-bird/20110419/1303243395
http://d.hatena.ne.jp/korokorokoron/20100326#1269579210


説明に、overlayという言葉が頻繁に出てくるけど、
ふつうなら入れられないかつてのツールバージョンを
インストールするときに用いるための「入れ物」のことらしい。
それを本尊portageにお認めいただくために、
/etc/portage/make.conf という
中心的設定ファイルに、こうマーキングするようだ。

PORTDIR_OVERLAY="/usr/local/portage/"

場所は任意でいいとのこと。
いろいろそろえて準備万端整ったら、
下記のようなカタチでガツンとインストールするらしい。

$ sudo PORTDIR_OVERLAY="/usr/local/portage" emerge -av pcsc-lite-1.6.1.ebuild
$ sudo PORTDIR_OVERLAY="/usr/local/portage" emerge -av ccid-1.3.13.ebuild

ここまでが前置き。


さて、最初に、ツールの新しいバージョンを嫌っている証を立てる。

$ sudo nano -w /etc/portage/package.mask

>sys-apps/pcsc-lite-1.8.2
>app-crypt/ccid-1.4.5
を追記。

参考サイトのひとつに倣って
/usr/local/portage 作業場所として本家にお知らせする。

$ sudo nano -w /etc/portage/make.conf

PORTDIR_OVERLAY="/usr/local/portage/"
を追記。

つづいて、作業場の建設と現場への移動。

$ sudo mkdir -p /usr/local/portage/sys-apps/pcsc-lite/files
$ cd /usr/local/portage/sys-apps/pcsc-lite

まずは、pcsc-liteのインストールへ資材の運び込み。

$ sudo wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/pcsc-lite/pcsc-lite-1.6.1.ebuild
$ sudo wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/pcsc-lite/metadata.xml

足場を伝わって別室へ移動。

$ cd files

資材の運び込み。

$ sudo wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/pcsc-lite/files/pcscd-init
$ sudo wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/pcsc-lite/files/pcscd-confd

そして、元の場所に戻って、

$ cd ../

証文状?の作成。

$ sudo ebuild pcsc-lite-1.6.1.ebuild digest

インストールのための最後の下準備。

$ sudo nano /etc/portage/package.use

sys-apps/pcsc-lite usb
usb対策として追記。

インストール!

$ sudo PORTDIR_OVERLAY="/usr/local/portage" emerge -av pcsc-lite-1.6.1.ebuild

インストール完了後、

$ emerge -vp pcsc-lite

    (sys-apps/pcsc-lite-1.8.2::gentoo, ebuild scheduled for merge) pulled in by
    >=sys-apps/pcsc-lite-1.6.5 required by (app-crypt/ccid-1.4.5::gentoo, ebuild scheduled for merge)

    (sys-apps/pcsc-lite-1.6.1::x-portage, installed) pulled in by
    sys-apps/pcsc-lite::x-portage required by @selected

と出れば、OKとのこと。



ここからは、古いccidの件。つづけて同じように
overlay指定した配下で仕事を行う。

$ sudo mkdir -p /usr/local/portage/app-crypt/ccid/files
$ cd /usr/local/portage/app-crypt/ccid

資材の運び込み。

$ sudo wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-crypt/ccid/ccid-1.3.13.ebuild
$ sudo wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-crypt/ccid/metadata.xml

どこかの政党と違って有名事実なManifestを作る?

$ sudo ebuild ccid-1.3.13.ebuild digest

インストール前の下準備。

$ sudo nano -w /etc/portage/package.use

    app-crypt/ccid usb -twinserial

と、usb対策をやはり記述。

で、インストール!

$ sudo PORTDIR_OVERLAY="/usr/local/portage" emerge -av ccid-1.3.13.ebuild

インストール後、

$ emerge -vp ccid

(app-crypt/ccid-1.4.5::gentoo, ebuild scheduled for merge) pulled in by
(no parents that aren't satisfied by other packages in this slot)

(app-crypt/ccid-1.3.13::x-portage, installed) pulled in by
app-crypt/ccid::x-portage required by @selected

のように出たら、OK。そして、pcscdを起動してみる。

$ sudo /etc/init.d/pcscd start
* Caching service dependencies ... [ ok ]
* Starting pcscd ... [ ok ]

忘れないうちに、daemon化。成功しないなら、openboxのautostartに登録するとよい。
今回は、なぜか、成功した。

$ sudo rc-update add pcscd default

pcsc_scanコマンドを使って、カード認識を確かめたい
ところだけど、pscs-toolsの新しいのを入れて、
ぶつかったりすると嫌なのでやらない。
前回導入時の実績(pt2が映った)で、動作することは確実。大丈V!



さて、pt2のドライバ、これは、巷間周知のとおり、
2senがなくなっちゃって、
ebuildとしては、もはやないようだ。どこかにあるのかもしれないけど。
で、gentoo作法外で取り組むことになる。場所は、とりあえず~/で。

まず、資材を運び入れ。荷解き。

$ sudo wget http://hg.honeyplanet.jp/pt1/archive/c44e16dbb0e2.tar.bz2
$ tar -jxf c44e16dbb0e2.tar.bz2

展開した中身で使うのは、「arib25」だけ。

$ cd ~/pt1-c44e16dbb0e2/arib25/src
$ make
$ sudo make install
   mkdir -p /usr/local/include/arib25
   install -m644 arib_std_b25.h b_cas_card.h portable.h /usr/local/include/arib25
   install -m755 b25 /usr/local/bin
   install -m755 libarib25.so /usr/local/lib/libarib25.so.0.2.4
   ln -sf /usr/local/lib/libarib25.so.0.2.4 /usr/local/lib/libarib25.so.0
   ln -sf /usr/local/lib/libarib25.so.0 /usr/local/lib/libarib25.so
   ldconfig

pt2のrecpt1とdriverは、新しいのを使う。

$ cd
$ sudo wget http://hg.honeyplanet.jp/pt1/archive/tip.tar.bz2
$ tar -jxf tip.tar.bz2
$ cd ~/pt1-b14397800eae/recpt1
$ ./autogen.sh
   Generating configure script and Makefiles for recpt1.
   Running aclocal ...
   Running autoheader ...
   Running autoconf ...
$ ./configure --enable-b25
   checking for gcc... gcc
   checking whether the C compiler works... yes
   checking for C compiler default output file name... a.out
   checking for suffix of executables...
   checking whether we are cross compiling... no
   checking for suffix of object files... o
   checking whether we are using the GNU C compiler... yes
   checking whether gcc accepts -g... yes
   checking for gcc option to accept ISO C89... none needed
   checking for create_arib_std_b25 in -larib25... yes
   checking for log10 in -lm... yes
   checking for pthread_kill in -lpthread... yes
   configure: creating ./config.status
   config.status: creating Makefile
   config.status: creating config.h
$ make
   revh=`hg parents --template 'const char *version = "r{rev}:{node|short} ({date|shortdate})";\n' 2>/dev/null`; \
   if [ -n "$revh" ] ; then \
        echo "$revh" > version.h; \
   else \
        echo "const char *version = \""1.1.0"\";" > version.h; \
   fi
   gcc -MM recpt1.c decoder.c mkpath.c tssplitter_lite.c recpt1ctl.c -I../driver -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 > .deps
   gcc -O2 -g -pthread -I../driver -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o recpt1.o recpt1.c
   gcc -O2 -g -pthread -I../driver -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o decoder.o decoder.c
   gcc -O2 -g -pthread -I../driver -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o mkpath.o mkpath.c
   gcc -O2 -g -pthread -I../driver -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o tssplitter_lite.o tssplitter_lite.c
   gcc -o recpt1 recpt1.o decoder.o mkpath.o tssplitter_lite.o -lpthread -lm -larib25
   gcc -O2 -g -pthread -I../driver -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o recpt1ctl.o recpt1ctl.c
   gcc -o recpt1ctl recpt1ctl.o
   gcc -O2 -g -pthread -I../driver -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o checksignal.o checksignal.c
   gcc -o checksignal checksignal.o -lpthread -lm
$ sudo make install
   install -m 755 recpt1 recpt1ctl checksignal /usr/local/bin

$ cd ../driver
$ make
   revh=`hg parents --template '#define DRV_VERSION "r{rev}:{node|short}"\n#define DRV_RELDATE "{date|shortdate}"\n' 2>/dev/null`; \
   if [ -n "$revh" ] ; then \
    echo "$revh" > version.h; \
   else \
    printf "#define DRV_VERSION \""1.1.0"\"\n#define DRV_RELDATE \""2010-01-27"\"\n" > version.h; \
   fi
   make -C /lib/modules/`uname -r`/build M=`pwd` V=0 modules
   make[1]: ディレクトリ `/usr/src/linux-3.3.8-gentoo' に入ります
    CC [M] /home/izm2/pt1-b14397800eae/driver/pt1_pci.o
    CC [M] /home/izm2/pt1-b14397800eae/driver/pt1_i2c.o
    CC [M] /home/izm2/pt1-b14397800eae/driver/pt1_tuner.o
    CC [M] /home/izm2/pt1-b14397800eae/driver/pt1_tuner_data.o
    LD [M] /home/izm2/pt1-b14397800eae/driver/pt1_drv.o
    Building modules, stage 2.
    MODPOST 1 modules
    CC /home/izm2/pt1-b14397800eae/driver/pt1_drv.mod.o
    LD [M] /home/izm2/pt1-b14397800eae/driver/pt1_drv.ko
   make[1]: ディレクトリ `/usr/src/linux-3.3.8-gentoo' から出ます
$ sudo make install
   install -m 644 pt1_drv.ko /lib/modules/`uname -r`/kernel/drivers/video
   if [ -d /etc/udev/rules.d -a ! -f /etc/udev/rules.d/99-pt1.rules ] ; then \
    install -m 644 etc/99-pt1.rules /etc/udev/rules.d ; \
   fi
   depmod -a
$ sudo reboot
$ ls -l /dev/pt1*
   crw-rw-rw- 1 root video 246, 0 9月 26 15:13 /dev/pt1video0
   crw-rw-rw- 1 root video 246, 1 9月 26 15:13 /dev/pt1video1
   crw-rw-rw- 1 root video 246, 2 9月 26 15:13 /dev/pt1video2
   crw-rw-rw- 1 root video 246, 3 9月 26 15:13 /dev/pt1video3

この度も、映りとしては、同じだった。
vlc(2.0.1 Twoflower)で前画面表示(任意のサイズ)だと、
動きが止まり加減になったりする。
1:1 1:2 1:4 の既定の画面表示では、快適な映り。
二ヶ国語放送だと、音が無音になったり。
問題を解消するには、
gnome-playerを使うのが手っ取り早い。
1:1のdefault画面は、23inch(16:9)モニターが
ぴったりくるんじゃないか。

じぶんは、live放送さえ観られればいいので、
録画方向の設定については、まったく知らない。


posted by ブログ開設者 at 17:09| Comment(0) | linux | このブログの読者になる | 更新情報をチェックする