人とか機械とか

デジタルガジェットやコンピュータについてのブログです。

eclipse4.2junoとwindows7の64bit版でAndroid開発環境構築


2012年8月12日の時点での最新安定版であるEclipse 4.2 (juno)と、Windows7 64bitで Android開発環境を構築したメモです。

要約した結論を言うと、ググって出てくる良くある導入方法の解説と比べてjdkのpath設定をする以外は同じでした。



また、以下に書いてある手順どおりに作業したわけではなく、実際には失敗して作業が前後しています。ですので、改めて書いてある手順どおりにやって上手くいくかは試していません。たぶん大丈夫だと思いますが。


マシン

  • ノートPC
  • core i3 (SandyBridge)
  • DDR3-1333 8GB (安かったので増やした)
  • SSD PlextorM5S 256GB (安かったので買った)
  • Windows7 SP1 HomePremium Japanese 64bit


eclipseはとても重いので、SSDにしてRAMたくさん乗せて快適にしないとやる気が出ないです。
この環境だと、30秒くらいでOSが起動して、30秒くらいでeclipseが起動します。


あらかじめブラウザからダウンロードするもの

まとめてダウンロードしておくと作業時間に無駄がありません。

Android SDK

http://developer.android.com/sdk/index.html
installer_r20.0.1-windows.exe 68MBくらい

Eclipse 4.2

http://www.eclipse.org/downloads/
Eclipse IDE for Java EE Developers, 221 MB, Windows 64bit
eclipse-jee-juno-win32-x86_64.zip 221MB

パッケージの違いについてはここを参照。

Eclipse 4.2 のダウンロード,インストール,設定,日本語化,基本操作
http://www.kkaneko.com/rinkou/javaintro/eclipse.html

Pleiades

http://mergedoc.sourceforge.jp/
1.3.5をダウンロード。
pleiades.zip 14MBくらい
eclipseの日本語化キットです。


インストール

jdkのインストール

C:\Program Files\Java\jdk1.7.0_05\
インストーラから入れます。

ユーザー環境変数のpathに値を追加します。

C:\Program Files\Java\jdk1.7.0_05\bin

JAVA_HOME変数を追加して、値を設定します。

C:\Program Files\Java\jdk1.7.0_05

環境変数を設定し終わったら、いったんログオフしてログインしなおして反映させます。再起動でも良いです。


eclipseのインストール

C:\develop\eclipse-juno へzip解凍します。

Program Filesへ置くと面倒なことになる場合があるらしいので避けます。
理由は http://pasofaq.jp/windows/vista/virtualstore.htm

とりあえず素の状態のままちゃんと起動するか確認しておきます。
ちゃんと起動しました。英語です。


Pleiadesのインストール

Readmeをちゃんと読んでインストールします。

eclipse.exe -clean.cmd をeclipse.exeと同じディレクトリに置いて起動確認をします。日本語になりました。
これ以降はそのバッチファイルでなく、普通に起動するのでOKです。


Android SDKのインストール

ここで、環境変数が正しく設定されていないと、インストーラがjdkを発見できずにインストールできないようです。

インストール先は C:\develop\android-sdk\ にしました。

インストール完了すると自動でAndroid SDK Managerが起動します。
ToolsとExtrasは全てチェックしました。それほど大きくないので。他は必要なAPI Levelだけチェックしました。Install 35 packages...をクリックし、Accept Allをチェックして進めます。motorola xoomなどのいくつかのパッケージでアカウントを要求されるものについてはキャンセルしました。API Levelそれぞれはサイズが巨大なので「全部いれる」はオススメできません。後から追加でダウンロードとインストールもできるので、必要なものだけにします。

ダウンロードとインストールにしばらく時間がかかります。ここでつまづくことがあるのは、SDK Managerは一般的なアプリと異なりプロキシの設定をIEから読み込んでくれないため、プロキシ経由でインターネット接続している環境の場合は設定してやる必要があります。

また、ユーザー環境変数のpathに値を追加します。間はセミコロンを入れます。コマンドプロンプトからadb devicesとか打つとき役立ちます。

C:\develop\android-sdk\platform-tools;C:\develop\android-sdk\tools

EclipseにADTプラグインをインストール。

http://developer.android.com/sdk/installing/installing-adt.html にしたがって作業します。

  • Eclipseを起動します。
  • ヘルプ→新規ソフトウェアのインストール...
  • 追加ボタンでリポジトリを追加。URLはhttps://dl-ssl.google.com/android/eclipse/ 名前は適当にandroidに。
  • 追加した項目を選び直すと「開発ツール」と「NDKプラグイン」が出てくるので全部いれる。それほど大きくないので。
  • ライセンスを読みましたチェックして次へ次へ進める。
  • ダウンロードとインストールが始まります。
  • インストール完了するとEclipseの再起動を促されるので再起動。
  • 再起動するとAndroid開発へようこそウィンドウが出る。既存SDKを使用を選択し、 C:\develop\android-sdk を入力して次へ。

たぶんEclipse → ADTプラグイン → Android SDK という経路でアクセスしているみたいです。



Android開発環境の動作確認


プロジェクトを作って仮想デバイスを作ってHelloAndroidを動かす。動きました。
http://www.techfirm.co.jp/lab/android/helloworld.html


手持ちのAndroid端末(GALAXY S)で動かす。動きました。
http://crimson-systems.jp/android/android00.php


これで、一通り環境構築ができました。

ときどきjavaやADTやAndroidSDKにアップデートがくるので、更新しましょう。



おまけ:Windows 64bit版の構造


予備知識が無いとわけがわからない構造をしています。

カーネルは64bitなので、カーネルモードドライバも64bit版でないと動かない。

64bitのドライバには署名(signature)が必要。
64bitドライバは、32bitプロセスと64bitプロセス両方からアクセスされることを考慮する必要がある。ポインタの長さを気をつけるとか。

WOW64サブシステム(Windows32bit On Windows64bit)の上に32bitシステムが乗っている。

ディレクトリだとwindows/system32が64bitシステムで、windows/SysWOW64が32bitシステム。非常に理解しがたい命名だが仕方ない。

アプリケーションのインストールディレクトリ

64bitアプリケーションはProgram Filesに、32bitアプリケーションはProgram Files (x86)に、それぞれインストールされる。

システムが2つあるので、プロセスも32bitプロセスと64bitプロセスがある。

たとえば32bitアプリから64bit DLLをロードすることはできない。
タスクマネージャで、プロセスのbitがどちらなのか確認することができる。
参考:http://d.hatena.ne.jp/sea-show/20100313/126847675

参考URL

64 ビット Windows プログラミング ガイド
http://msdn.microsoft.com/ja-jp/library/bb427430(v=vs.85)

32 ビットおよび 64 ビットの Windows: よく寄せられる質問
http://windows.microsoft.com/ja-JP/windows7/32-bit-and-64-bit-Windows-frequently-asked-questions

jreやjdkやeclipseにも32bit版と64bit版がある。

タスクマネージャを見ると64bit版eclipseは64bitプロセスで動作しているので、64bit版jdk(つまりDLL)が必要になるはず。同じように32bit eclipseには32bit jdkが必要になる。という関係性のようだ。なので、べつに64bit Windows上に32bitのeclipseも平行してインストールできると思う。コンパイル速度とかのパフォーマンスは64bit版のほうが高そうな気がするが、ベンチマークしないとわからない。

64 ビット Windows オペレーティングシステムで使用する場合にダウンロードする Java のバージョン
http://www.java.com/ja/download/faq/java_win64bit.xml

ちなみにeclipseプラグインやAndroidSDKには32bit/64bitの区別がないようだが、どういう構造なのだろうか。