組込みとともに -30ページ目

「ユースケース実践ガイド」翔泳社はスゴ本

まだ読んでる途中ですが、「ユースケース実践ガイド」は素晴らしい本です。世の中「解った気にさせる本」は多いですが、この本は凄く実践的で有用な本だと感じました。

価格はちょっと高いですがそれなりの価値はあります。

ちょうど『利用ナレーティブ』を読んだところですが、利用ナレーティブって良いですね。試しに自分でもやってみましたが、自分の弱みがわかりました(^^)

チェックリスト的なものも実用的(^-^)

この本シリーズもので他にもいろんなテーマがあるみたいですが他のも有用なんだろうか?今度立ち読みしてみよ(^^;

極小Java VM(Nano VM)の開発環境環境を構築する ~Windows編~

前回の日記 に引き続きNano VMです。


繰り返しですが、Nano VMについて少し説明しておきます。

no VMはAVR 8ビットCPUで使用できる極小Java VMです。

ROM 8k RAM 768 EEPROM 512というマイコンでも使用できるようなので驚きです^^


Nano VMの情報はこちらからどうぞ(本家)↓↓

http://www.harbaum.org/till/nanovm/index.shtml


組込みとともに-nanovm


前回はubuntuで環境を構築しました。

こちらは割りと難なくできましたが、Windows環境は少々癖がありました。


~PC環境~

 マシン:Vaio Type-T centrino 1.06GHz RAM 1.5GB

 OS:Windows XP Pro SP3

 既にWinAVR環境が構築済み

 JAVA環境はJDK6(jdk1.6.0_14)がインストール済み


~手順~

1.Nano VMのダウンロード及び展開

 ダウンロードサイト(http://sourceforge.net/project/showfiles.php?group_id=181239&package_id=209853 )からnanovm-20070707.zip をダウンロードして、任意の場所に展開します。

2.RXTXのダウンロード

 http://www.ouravr.com/bbs/bbs_upload298762/files_8/ourdev_182773.zip

 からダウンロードして、展開

 RXTXcomm.jarをJREのBINディレクトリへコピー

 (私の場合D:\Program Files\Java\jdk1.6.0_14\jre\lib\ext)

 rxtxSerial.dllをJREのlib/extディレクトリへコピー

 (私の場合D:\Program Files\Java\jdk1.6.0_14\jre\bin)

3.WinAVR (WinAVR-20071221-install.exe)をダウンロード及びインストール

 インストール時には環境変数を弄らないようにチェックを外しておいてください

 また20071221はV4.2.2ですが、V4.2系でないとビルドが成功しないのでご注意ください!

 今後調査しないといけないですね^^;


組込みとともに-WinAVR 20071221

4.設定

 ubuntuならここの段階でビルドできるのですがWindowsの場合、もうちょっと手間がかかります。

4-1.PREFIX

 もともとWinAVRを使っていたために今回V4.2は環境変数へ追加しないようにしました。

 ですのでビルド時にPREFIXを使ってV4.2のavr-gccを指定します。

 ビルド対象のMakefileを編集します。例えばasuroならなのvm\vm\build\asuro\Makefile

12行目のPREFIXを

PREFIX = C:/WinAVR-20071221/bin/

 とします

 また他にPREFIXに対応していない部分を修正

 40行目

$(PREFIX)avr-size -A $@

 72行目

$(PREFIX)avrdude ・・・(省略)


4-2.CLASSPATH

 Windows環境の場合CLASSPATHをmakeファイル内で”:”でも”;”(*1)でも区切れないようです。環境変数に設定するのも気持ちが悪いので4-1でのMakefile側で吸収する方法をとります。

 例えばasuroならなのvm\vm\build\asuro\Makefile

17行目に下記を追加
CLASSPATH = $(ROOT_DIR)/java;$(ROOT_DIR)/java/examples

 これにあわせてvm\src側のMakefileも修正

 21行目 -classpathオプションを削除

javac $(ROOT_DIR)/java/examples/$(DEFAULT_FILE).java

 26行目 -classpthオプションを削除

javac $(ROOT_DIR)/java/examples/$*.java


*1:srcディレクトリのMakefile内の記述

  javac -classpath $(ROOT_DIR)/java:$(ROOT_DIR)/java/examples

  の文で”:”(コロン)で二つのパスを繋げていますが、Windowsはパスの連結を”;”(セミコロン)でつなげるため正しくCLASSPATHが通りません。ここの記述を”;”(セミコロン)に変えてしまうと今度はmakeファイルが処理適切に出来なくなるというトラップがありますあせる



 さぁて、これでビルドできる状態になりました。あとはubuntuと同様にビルドの確認をします。

試しにAsuroをビルドしてみます。

>cd nanovm/vm/build/asuro

>make

↓↓ビルド結果


組込みとともに-build結果

どうでした?無事ビルドできましたか?

極小Java VM(Nano VM)の開発環境環境を構築する ~ubuntu編~

Nano VMはAVR 8ビットCPUで使用できる極小Java VMです。

ROM 8k RAM 768 EEPROM 512というマイコンでも使用できるようなので驚きです^^


Nano VMの情報はこちらからどうぞ(本家)↓↓

http://www.harbaum.org/till/nanovm/index.shtml


組込みとともに-nanovm


Windows用の環境から構築し始めたのですが、Windowsの場合は少々苦労する点がありましたので別途日記にまとめます。まずはLinux開発環境の構築方法から。


~PC環境~

 マシン:Windows XP Pro SP3上VirtualBox 2.2.2

 仮想マシン上OS:ubuntu 8.04(日本語Remix版

 インストール直事後の状態とする


~手順~

$ sudo apt-get update

$ sudo apt-get install gcc-avr

$ sudo apt-get install avr-libc

$ avr-gcc --version

avr-gcc (GCC) 4.2.2 <- 4.3ではなく4.2で!

$ sudo apt-get install sun-java6-jdk

$ javac -version

javac 1.6.0_07

$ java -version

java version "1.6.0_07"

$ mkdir local

$ cd local

$ wget http://jaist.dl.sourceforge.net/sourceforge/nanovm/nanovm-20070707.tgz

$ tar -xzvf nanovm-20070707.tgz

$ cd nanovm/doc/

$ export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.07

$ echo $JAVA_HOME

/usr/lib/jvm/java-6-sun-1.6.0.07
$ /bin/bash install_rxtx.sh

# 権限の問題で最後にエラーが出ると思われるので最後は手動でcopy

$ tar -xzvf rxtx-2.1-7-pre17-686-pc-linux-gnu.tar.gz

$ cd rxtx-2.1-7-pre17-686-pc-linux-gnu

$ sudo cp librxtxSerial.s $JAVA_HOME/jre/lib/i386/

$ sudo cp RXTXcomm.jar $JAVA_HOME/jre/lib/ext/


これで環境の構築が出来上がりました。

試しにAsuroをビルドしてみます。

$ cd ~/local/nanovm/vm/build/asuro

$ make


エラーがなければNanoVM.elfのメモリロケーション情報が出力されているはずです。


どうでした?無事ビルドできましたか?


次回はWindows用の開発環境構築です。