RaspberryPi3でKTV-FSUSB2/V3（K1508）を使った録画方法その1（Softcasとlibarib25のインストール）

#序
結構長いことになりそうなので、2〜3回に分けて順序立てて紹介しようと思う。
ここでは、Softcasとlibarib25のインストールを紹介する。
ちなみにKTV-FSUSB2/V3に関しては、私が所有しているのはS/N：K1508から始まる型番なので、基本的にはハード的な改造もファームウェアの変更もいらない（ただし、Windowsに関しては若干違うと思うので、Windowsの方は別途調べてほしい）。
また、KTV-FSUSB2/V3自体、今あるものが最後であり、次の製品は今よりも締め付けが厳しくなる。興味があるけどどうしようと悩んでいる方は取りあえず購入するというのも一つの手ではある。

ちなみに、ここではInstallするソフト、ライブラリの細かい解説に関しては割愛させて頂く。そもそも意味がわからない人にRaspberryPi3で地デジ録画は無理かと思われる（実際、ここで紹介した解説を一つミスるだけで、最悪RaspberryPi3ではログインが出来なくなる事もあり得る）。

#Softcasのインストール
~~まずは、準備として以下のパッケージをインストールする。~~
現在、softcasの導入はMakefileやwinscard.cppのリンクがなくなっていたり、最新のOSではmakeが通らなくなっているため、正常にインストールできない。
どうしてもインストールを地デジ録画をしたいという方は、カードリーダーを使っての運用が望ましい。
その場合の解説は私も執筆参加している 「ここまで作れる! Raspberry Pi 実践サンプル集」に記載している（書籍に書いてしまっているのでQiitaには書けないのです、申し訳ない）。
取りあえず、softcasの導入に関しては、一旦このままテキストは残すが、解説策が出て来たら、書き直すこととする。

```
$ sudo apt-get install libccid libpcsclite-dev libpcsclite1 pcsc-tools pcscd
```

次にsoftcasをダウンロードする。

```
$ wget http://www.wazoku.net/softcas.zip
$ unzip softcas.zip
```

解凍して出来たフォルダーに移動し、winscard.cppとMakefileを次のファイルに置き換える。

```
$ cd softcas
$ wget https://gist.github.com/tyage/3d201580549bc84e24cd/raw/Makefile -O Makefile
$ wget https://gist.github.com/tyage/3d201580549bc84e24cd/raw/winscard.cpp -O winscard.cpp
```

ここで`make`するとエラーになるので `/usr/include/PCSC/pcsclite.h`の90行目の

```
extern const SCARD_IO_REQUEST g_rgSCardT0Pci, g_rgSCardT1Pci, g_rgSCardRawPci;
```

を

```
extern const SCARD_IO_REQUEST g_rgSCardT0Pci, g_rgSCardRawPci;
```

と修正して、`make`する。

`make`が通ったら先ほど修正した`/usr/include/PCSC/pcsclite.h`は元に戻しておく。

ここではまだ`make install`や出来たアプリの移動は行わない。

#Softcasとwpa supplicantを併用する
RaspberryPi3の場合、このままSoftcasをコピーすると、RaspberryPi3の場合、wpa supplicantとバッティングして、Softcasが使えない。恐らくRaspberryPiやRaspberryPi2であれば問題ないかも知れないが、Wi-Fi関連を使っている場合、同じ問題に直面するだろう。

##libpcsclite.so.1.0.0をlibpcsckai.so.1.0.0と名称変更する
なので、Softcasを別の名前にして、該当の場所にインストールする。
まず、libpcsclite.so.1.0.0をコピーする

```
$ $ sudo cp libpcsclite.so.1.0.0 /usr/lib/arm-linux-gnueabihf/libpcsckai.so
```

次にpcファイルを作成する。

```
$ cd /usr/lib/arm-linux-gnueabihf/pkgconfig
$ sudo cp libpcsclite.pc libpcsckai.pc
$ sudoedit libpcsckai.pc
```

10行目の`Libs: -L${libdir} -lpcsclite`を`Libs: -L${libdir} -lpcsckai`とする。

##libarib25をインストールする
まずはソースファイルを落としてくる。

```
$ wget https://github.com/stz2012/libarib25/archive/master.zip
```

次に解凍し、解凍して出来たフォルダーに移動する。

```
$ unzip master.zip
$ cd libarib25-master
```

libarib25のMakefileの

```
PCSC_CFLAGS ?= `pkg-config libpcsclite --cflags`
PCSC_LDLIBS ?= `pkg-config libpcsclite --libs`
```

を

```
PCSC_CFLAGS ?= `pkg-config libpcsckai --cflags`
PCSC_LDLIBS ?= `pkg-config libpcsckai --libs
```

と修正して`make`する。

次に、makeして出来たライブラリが適切にリンクされているかどうか確認する。

```
$ ldd libarib25.so
```

おおよそ、次のようになっていれば問題ない。

```
	linux-vdso.so.1 (0x7ee14000)
	/usr/lib/arm-linux-gnueabihf/libarmmem.so (0x76f23000)
	libpcsckai.so => /usr/lib/arm-linux-gnueabihf/libpcsckai.so (0x76ef6000)
	libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x76e1a000)
	libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x76d9f000)
	libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x76d72000)
	libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x76c31000)
	/lib/ld-linux-armhf.so.3 (0x54b59000)
```

特に重要なのは3行で、ここが先ほどのlibpcsckai.soになっていれば成功である。
問題がなければ、Installする。

```
$ sudo make install
```

#終（または締）
取りあえず、ここではsoftcasとlibarib25のInstallまでを解説した。
その2ではrecfsusb2iとcronの設定をしようと思う。