Windows で rhodes を使ってみる

この Web ページで行うこと.


この Web ページでの設定内容

RubyInstaller を用いた Ruby バージョン 1.9.3 のインストール

ダウンロード

  1. RubyInstaller の Web ページを開く.

    http://rubyinstaller.org/

  2. Downloadをクリック
  3. 2つのファイルをダウンロード
    • Ruby 1.9.3-p392
    • DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe

インストール

  1. ダウンロードしたファイルを実行

    「Ruby の実行ファイルへ環境変数PATHを設定する」をチェックする

    DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe は Ruby のインストールディレクトリに展開(解凍)する

  2. Windows で、環境変数 PATH に次を追加する

    C:\Ruby193」のところは、実際に Ruby をインストールしたディレクトリに読み替えること

    C:\Ruby193\mingw\bin
    
  3. 設定の確認

    コマンドプロンプトで, Ruby を使ってみる. 次のように実行し、「3」が表示されればOK.

    irb
    p 1 + 2
    exit
    

gnupack (cygwin + emacs package) のインストール

ダウンロード

  1. gnupack (cygwin + emacs package) のダウンロード Web ページ

    http://sourceforge.jp/projects/gnupack/releases/?package_id=10360

  2. 2つのファイルをダウンロード
    • gnupack_basic-11.00.exe
    • gnupack_devel-11.00.exe

インストール

  1. ダウンロードした2つのファイルの解凍

    C:\ の直下に展開(解凍)する。次のような2つのディレクトリができる

  2. Windows で、環境変数 PATH に次を追加する

    C:\gnupack_basic-11.00」 や 「C:\gnupack_devel-11.00」 のところは、実際にインストールしたディレクトリに読み替えること

    Ruby のパス(C:\Ruby193\bin や C:\Ruby193\mingw\binなど)の方が先になるように設定する

    C:\gnupack_basic-11.00\app\emacs\emacs\bin;C:\gnupack_basic-11.00\app\cygwin\cygwin\bin;C:\gnupack_devel-11.00\app\emacs\emacs\bin;C:\gnupack_devel-11.00\app\cygwin\cygwin\bin 
    
  3. 設定の確認

    コマンドプロンプトで「mintty」を実行し、新しい cygwin のウインドウが開けばOK.

JDK のダウンロードとインストール

ダウンロード

  1. Java Platform (JDK) の配布ページを開く

    https://www.oracle.com/java/technologies/downloads/?er=221886

  2. Java Platform (JDK) のダウンロードの開始

    ページ上部の 「Java SE Downloads」の欄から「Java Platform (JDK) 8u20」のダウンロードボタンをクリック

  3. ライセンスに同意(Accept License Agreement)し,使用しているOSのバージョンに合わせたものを選択する.

インストール

  1. ダウンロードした実行形式ファイルを実行すると、セットアップが始まる
  2. ようこそ画面

    次へ」をクリック.

  3. カスタムセットアップ

    デフォルトのままで問題ない.「次へ」をクリック.

  4. インストール

    自動で行われるため,特に操作は必要ない

  5. インストール先フォルダ

    デフォルトのままで問題ない.「次へ」をクリック.

  6. セットアップ

    自動で行われるため,特に操作は必要ない

  7. インストール完了

    閉じる」をクリックして終わる.

  8. 環境変数の設定

    以下、「C:\Program Files\Java\jdk1.8.0_20」のところは、実際にインストールしたディレクトリに読み替えること

    マイコンピュータを右クリック → プロパティ → 詳細設定 → 環境変数をクリック

    • JAVA_HOME の設定
          ユーザの環境変数→新規
            変数名:JAVA_HOME
          変数値:C:\Program Files\Java\jdk1.8.0_20 ※ 設定例
      

      * 設定例

    • PATH の設定
          ユーザの環境変数→新規
            変数名:PATH
          変数値:「;C:\Program Files\Java\jdk1.8.0_20\bin」を追加 
      

      * 設定例

      これによりjavaやjavacと打つだけで実行できるようになる

      すでに,PATH を定義済みのときは,「;」で区切る.

      パスを通す

      1. Windows のスタートメニューを開き,コントロールパネル→システムとセキュリティ→システム と辿る
      2. 左側のメニューに「システムの詳細設定」という項目があるのでそこを選択
      3. 「詳細設定タブ」の一番下「環境変数」を選択し,環境変数を変更するウィンドウ<を開く
      4. 下側のグループ「システム環境変数」のなかから「PATH」を探してダブルクリック

        ※すでに記入してある内容は削除しない

        ※変数と変数の間は「;」(半角セミコロン)で区切る

      5. 追記が完了したら「OK」を押してウィンドウを閉じる
    • CLASSPATH の設定
          システム環境変数→新規
          変数名:CLASSPATH
          変数値:.;C:\Program Files\Java
      

      これによりカレントフォルダと「C:\Program Files\Java」の jar ファイルを探せるようになる

  9. 設定の確認

    コマンドプロンプトを開き,「java -version」と実行してみる。 エラーメッセージが出なければOK.

  10. (オプション) NetBeans IDE をインストールした場合は、試しに起動してみる

    エラーメッセージが出なければOK.

Android SDK のインストール

ダウンロード

  1. Android SDK Tool のダウンロードページへ移動 https://developer.android.com/sdk/index.html
  2. ADT bundle の圧縮形式(.zip)ファイルの最新版をダウンロード

インストール

  1. ZIP ファイルを, 分かりやすいディレクトリに展開(解凍)する.
  2. 解凍が終わったら、Windows で、環境変数 PATH に次を追加する

    「Android SDK」フォルダー内の eclipse フォルダーと、Tools フォルダーと、platform-tools フォルダーのパスを追記する

    例えば次のように. 「C:\adt-bundle-windows-x86_64-20130219」のところは、実際のディレクトリに読み替えること

    C:\adt-bundle-windows-x86_64-20130219\eclipse;C:\adt-bundle-windows-x86_64-20130219\sdk\tools;C:\adt-bundle-windows-x86_64-20130219\sdk\platform-tools
    
  3. 確認

    コマンドプロンプトを開き,「eclipse」と実行してみる。 eclipse が起動すればOK

AVD Manager を用いた設定

  1. Android SDK and AVD Manager の起動

    コマンドプロンプトを開き,「android」と実行。

    android
    
  2. インストールしたいパッケージを選択し,インストールを開始

    ◆ 下の実行例では,パッケージとして次のものを選んでいる.

    • Android SDK Tools
    • Android SDK Platform-tools
    • Android 4.2.2 (API 17)
    • Android 2.3.3 (API 10)

Android エミュレータの生成とテスト起動

  1. monitor コマンドを使って,ddms (Android Debug Monitor) を起動してみる
    android update adb
    adb kill-server
    adb start-server
    monitor
    
  2. コマンドを使って,Android エミュレータを生成、
    • -n hoge: マシン名
    • -1 1: ターゲットID
    • 「--abi armeabi」: armeabi や x86 を指定
      android create avd -n hoge -t 1 --abi armeabi
      emulator -avd hoge
      

      エミュレータの一覧表示は「android」.

      *エミュレータが起動しない場合の対処法

      環境変数ANDROID_SDK_HOME を、日本語が含まれないディレクトリに設定し、上の手順をやり直す

Android NDK

ダウンロード

  1. https://developer.android.com/tools/sdk/ndk/index.html からダウンロードする

インストール

  1. 分かりやすいディレクトリに展開(解凍)する
  2. 解凍が終わったら、環境変数 PATH を設定する

    例えば次のように.「C:\android-ndk-r8e-windows-x86_64\android-ndk-r8e」は、実際のディレクトリに読み替えること.

    C:\android-ndk-r8e-windows-x86_64\android-ndk-r8e
    
  3. 確認

    コマンドプロンプトを開き,次のように実行してみる

    cd C:\android-ndk-r8e-windows-x86_64\android-ndk-r8e
    cd samples
    cd hello-jni
    ndk-build
    

rhodes のインストール

  1. コマンドプロンプトを開き,gem install rhodes を実行
    gem install rhodes 
    
  2. エラーメッセージが出ていないことを確認
  3. コマンドプロンプトを開き,rhodes-setup を実行
    rhodes-setup
    
  4. JDK のパス,Android SDK のパス,Android NDK のパスを設定

    このWebページでの設定例(実際のディレクトリに読み替えてください)

    • JDK のパス: C:\Program Files\Java\jdk1.7.0_21
    • Android SDK のパス: C:\adt-bundle-windows-x86_64-20130219\sdk
    • Android NDK のパス: C:\android-ndk-r8e-windows-x86_64\android-ndk-r8e
  5. (64 ビット Windows のみ) rhodes のファイル c:/Ruby193/lib/ruby/gems/1.9.1/gems/rhodes-3.5.1.12/platform/android/build/androidcommon.rb の書き換え

    64 ビット Windows で、 「rake run:android」の操作時に 「Can't detect NDK toolchain path (corrupted NDK installation?」というエラーがでるのを回避するため。

    c:/Ruby193/lib/ruby/gems/1.9.1/gems/rhodes-3.5.1.12/platform/android/build/androidcommon.rb12行目

    変更前

      $ndkhost = "windows"
    

    変更後

      $ndkhost = "windows-x86_64"
    
  6. c:/adt-bundle-windows-x86_64-20130219/sdk/tools/apkbuilder.bat の書き換え

    Windows で、 「rake run:android」の操作時に 「C:\Windows\system32\java.exe は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません」というエラーがでるのを回避するため。

    c:/adt-bundle-windows-x86_64-20130219/sdk/tools/apkbuilder.bat の書き換え

    変更前

    call %java_exe% -classpath %jarpath% com.android.sdklib.build.ApkBuilderMain %*
    

    変更後

    call java.exe -classpath %jarpath% com.android.sdklib.build.ApkBuilderMain %*
    
  7. c:/Ruby193/lib/ruby/gems/1.9.1/gems/rhodes-3.5.1.12/platform/android/build//android_tools.rb

    Windows で、 「rake run:android」の操作時に 「Unable to run Android emulator. No appropriate target API for SDK version」というエラーがでるのを回避するため。

    c:/Ruby193/lib/ruby/gems/1.9.1/gems/rhodes-3.5.1.12/platform/android/build//android_tools.rb の244行目

    変更前

          raise "Unable to run Android emulator. No appropriate target API for SDK version: #{$emuversion}" unless targetid
    

    変更後

    #      raise "Unable to run Android emulator. No appropriate target API for SDK version: #{$emuversion}" unless targetid
    

アプリケーションを動かしてみる

  1. Windowsコマンドプロンプトで次のように操作
    cd c:\
    mkdir tmp
    cd tmp
    mkdir myapp
    cd myapp
    rhogen app hoge http://localhost:9292/hoge
    
  2. 終了の確認

    エラーメッセージが出ていないことを確認する

  3. hoge/build.yml の編集

    設定例

    android
      version: 2.3.3
      minSDK: 10
      emulator: hoge
    
  4. 「android」コマンドで Android SDK Manager を起動し、

    「Tools」をクリックし、「Options」を選ぶ

    Force http:// .... sources to fetch using http:// ...」をチェック

  5. Windowsコマンドプロンプトで次のように操作
    rake run:android