やまものブログ

メモ書きブログです (^_^;A

Ubuntu (14.04 LTS) + RC-S330 で Suica残高のチェック … コアダンプ orz

結果的には
中止 (コアダンプ)
でエラー終了でしたが、とりあえず、gsuica というアプリを起動するところまでたどり着いたので、手順をメモします。

途中でパッケージの不足などのエラーがあったので実際の手順そのままではなく、私の理解の範囲で整理した手順としています。
手順の概要は以下のとおりです。

手順0) 以前(2014/2/23)、インストールした libusb の動作確認
手順1) Ruby のインストール
手順2) libpafe のインストール
手順3) libpafe-ruby のインストール
手順4) gtk2 インストール
手順5) gsuica の入手と実行


手順0) 以前(2014/2/23)、インストールした libusb の動作確認
まず、RC-S330 を USB接続し、Suica をセットします。

$ lsusb
: 中略
Bus 004 Device 002: ID 054c:02e1 Sony Corp. FeliCa S330 [PaSoRi]
: 以下、省略
wyamamo@DOMA-GA-880GM-USB3:~$ sudo nfc-poll
: 出力結果は省略
wyamamo@DOMA-GA-880GM-USB3:~$ sudo nfc-list
: 出力結果は省略

リーダーとカードの認識は問題なさそうです。


手順1) Ruby のインストール
$ sudo apt-get install ruby
$ sudo apt-get install ruby-dev

2つ目の ruby-dev は、このインストールが無いと、手順3(libpafe-ruby のインストール)の "ruby extconf.rb" で mkmf をロードできないというエラーになります。


手順2) libpafe のインストール
libpafe_0.0.8-1_amd64.deb を dpkg でインストールしたところ、次の手順3(libpafe-rubyのインストール)で libpafe/libpafe.h が無いというエラーに遭遇しました。このため、ソースコードからインストールします。

$ wget http://homepage3.nifty.com/slokar/pasori/libpafe-0.0.8.tar.gz
$ tar zxf libpafe-0.0.8.tar.gz
$ cd libpafe-0.0.8/
$ ./configure
$ make
$ sudo make install



手順3) libpafe-ruby のインストール
$ wget http://homepage3.nifty.com/slokar/pasori/libpafe-ruby-0.0.8.tar.gz
$ tar zxf libpafe-ruby-0.0.8.tar.gz
$ cd libpafe-ruby/
$ ruby extconf.rb
$ make
$ sudo make install



手順4) gtk2 インストール
次の手順5(gsuica の実行)で gtk2 をロードできないとのエラーに遭遇しました。

$ sudo apt-get install build-essential → 既に最新バージョンです。とのこと
$ sudo apt-get install libgtk2.0-dev → これだけではエラーは解消せず
$ sudo apt-get install gtk2.0 → これでもエラーは解消せず
$ sudo gem install gtk2 --no-ri --no-rdoc

最後の gem はウェブで見つけた情報をもとに意味も分からないまま実行しました


手順5) gsuica の入手と実行
$ wget http://homepage3.nifty.com/slokar/pasori/gsuica
$ vi gsuica
→ 先頭行の末尾 ”1.9.3” を削除
(編集前) #! /usr/bin/ruby1.9.3
(編集後) #! /usr/bin/ruby
$ chmod a+x gsuica

以下すべての実行(場所)において結果はコアダンプのエラーでした。
$ ./gsuica
$ sudo ./gsuica
$ sudo mv gsuica /usr/local/bin/
$ sudo gsuica

なお、コアダンプの最後に、以下の NOTE がありました。
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html

ruby のリリースをチェックしながら気長にバージョンアップを待つことにします