RXTX は java でシリアルやパラレルポートをアクセスするためのネイティブライブラリだ。これを NetBSD-5.1/i386 + OpenJDK で使うためのメモ。おそらく需要は限りなくゼロに近いと思われる。
まずは OpenJDK を pkgsrc (/usr/pkgsrc/language/openjdk7/) で導入する。今回はソースからビルドしたがバイナリでも良い筈。環境変数 JAVA_HOME と PATH の設定もする。Linux 用バイナリを使う sun-java だとエミュレーション環境で動作するため、このような目的には不向きだと思う。
# cd /usr/pkgsrc/language/openjdk7 # make install # export JAVA_HOME=/usr/pkg/java/openjdk7 # PATH=/usr/pkg/java/openjdk7/bin:$PATH
RXTX のソースコードを取得、ビルド。一応 NetBSD もサポートされているようなことが書かれているが、そのままでは通らないから、適宜調整して行く。
# cd ~ # wget http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7r2.zip # unzip rxtx-2.1-7r2.zip # cd rxtx-2.1-7r2 # ./configure
# gmake : # cp RXTXcomm.jar /usr/pkg/java/openjdk7/jre/lib/ext # cd i386-unknown-netbsdelf5.1 # gcc -shared ./libs/fuserImp.o ./libs/SerialImp.o -Wl,-soname -Wl,librxtxSerial-2.1-7.so -o .libs/librxtxSerial-2.1-7.so # gcc -shared ./libs/fuserImp.o ./libs/ParallelImp.o -Wl,-soname -Wl,librxtxParallel-2.1-7.so -o .libs/librxtxParallel-2.1-7.so # cd i386-unknown-netbsdelf5.1/.libs # cp -P *.so /usr/pkg/lib # cat > /usr/pkg/java/openjdk7/jre/lib/ext/gnu.io.rxtx.properties os.name=NetBSD gnu.io.rxtx.SerialPorts=/dev/ttyU0:/dev/tty00:/dev/tty01 ^D #
こうして出来上がったライブラリを Processing からも使うことができた。写真は Gainer IO モジュールの Pepper を操作しているところ。実はこれが目的だった。
おそらく携帯電話等からは投稿できません。日本語文字列を含まないコメントやトラックバック、および当サイトへの言及を含まないトラックバックは御遠慮いただいております。また、90日以上経過した記事へのコメントはできません。