EclipseでAndroid開発環境をインストール:NDKとCDT


EclipseでAndroid開発環境をインストール:NDKとCDT
(本文はインターネット資料に基づいて収集・整理し、著者が自ら検証した)
cheungmine
最新のeclipseバージョンheliosがAndroidのJDKとNDKの開発環境をどのように構築するかを記録した.NDKとcygwinを統合する方法を提供した.ユーザがcygwinコマンドラインに切り替えずにNDKのコードをコンパイルするために,eclipse下のNDK環境を構成する.最後に、eclipse上のC/C++開発環境であるCDTを構成する方法を示します.本明細書では、NDKの使用方法を説明する最も簡単な例も提供する.
キーワード:eclipse,Android,Android SDK,cygwin,NDK,CDT
1準備
1.1 Windows XP 32ビット環境PC機、ブロードバンドインターネットに接続する.
1.2 JDKのインストール
ダウンロード先:
https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=jdk-6u12-oth-JPR@CDS-CDS_Developer
ダウンロード後:jdk-6 u 12-windows-i 586-p.exe.インストールすればいいです.この例では、D:JavaHomeにインストールします.正しくインストールした後、システム環境変数には次の設定が含まれます(ディレクトリが本明細書と同じであると仮定します).
JAVA_HOME=...
D:\JavaHome\jdk1.6.0_12
CLASSPATH=...
%JAVA_HOME%\bin;.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;;C:\ProgramFiles\Java\jre6\lib\ext\QTJava.zip;D:\OraClient10g\jdbc\lib\classes12.zip
Path=
%JAVA_HOME%;.;%JAVA_HOME%\bin;...
1.3 eclipse(HEILOS)のインストール
ダウンロード先:http://www.eclipse.org/downloads/
ダウンロード:Eclipse IDE for Java EEDevelopers,206 MB
入手:eclipse-jee-helios-SR 2-win 32.zip
Eclipseはインストールを必要とせず、eclipse-jee-helios-SR 2-win 32を解凍する.zip到:D:helios.
起動:D:helioseclipse.exe.ワークスペース:D:heliosworkspace
eclipseを更新できます.
eclipseを開きます.メニューHelp->Check For Updates、更新を確認します.必要なコンポーネントを選択してeclipseを更新します.
2 Android開発ツールのインストール
2.1 Android SDKのインストール
次のアドレスでダウンロード:android-sdk_r04-windows.zip http://rghost.net/download/817413/e08025da54d8e38f7e97bcdce6117620a33c054e/android-sdk_r04-windows.zip
解凍android-sdk_r04-windows.zip到:D:heliosandroid-sdk-windows.
android-sdkを最新に更新:
eclipseメニューHelp->Check For Updates、必要な更新を行います.
eclipseメニューHelp->Install New Software:
Work with:
http://dl-ssl.google.com/android/eclipse/site.xml
ボタンをクリック[Select All]
ボタンをクリック[Next>]
2.2 Android SDKの構成
1)参照の設定:
eclipseメニュー->Window->Preferences:
左選択+Android、右入力:
SDK Location:D:\helios\android-sdk-windows
ボタンをクリック[Apply]
2)Android SDKの更新:
eclipseメニュー->Window->Android SDK and AVD Manager
右側には、前のステップで設定したSDK Location:D:heliosandroid-sdk-windowsが表示されます.
左のAvailable packagesをクリックして、更新するパッケージを選択します.
左のInstalled Packagesをクリックし、[Updated All...]を押します.すでにインストールされているすべてのパッケージを更新できます.
2.3 Android仮想マシンの作成:
eclipseメニュー->Window->Android SDK andavD Manager、左選択:
Availabledevices,右側[New...]ボタンをクリックして、Create new Android VirtualDevice(AVD)ダイアログボックスを開きます.
Name:HTC-G7
Target:Android 2.2 - API Level 8
SD Card:
       Size=1000 MiB
[Create AVD]ボタンを押します.このAVDは、各導入前に起動します(eclipseメニュー->Window->Android SDK andavD Manager、左選択:Availabledevices、右選択HTC-G 7、[Start...]ボタンを押してAVDを起動します.)
2.3 cygwinとAndroid NDKの構成
従来、GCCを使ってARMにプログラムを書くのは面倒で、彼のクロスコンパイル環境はLinuxの下で実行する必要がある.他の多くのツールはWindowsの下で使用せざるを得ず、オペレーティングシステムを切り替えざるを得ず、面倒で貴重な時間を浪費しています.CYGWINの出現はやっとこの問題を解決した.
CYGWINは、WindowsオペレーティングシステムのLinuxクラスの実行環境であり、Linux APIを提供するためのDLLと一連のlinuxツールを含む.にあるhttp://cygwin.com/最新バージョンにダウンロードできます.Cygwinのインストーラsetupをダウンロードしました.exe、インストールできます.インストールする前に、インストールするドライブに3 GBのスペースがあることを確認します.Cygwinはインストールする时直接ネットからインストールすることを选ぶことができて、インストールパッケージとローカルインストールをダウンロードして、私は选んだダウンロードインストールパッケージで、必要なものをローカルディスクの中に降りて、更にローカルからインストールして、次のステップはインストールの位置を选んで、ネットの接続方式を设置してそしてダウンロードサイトを选んで、それからインストールするパッケージを选んで、4种类のインストール状态はそれぞれDefaultで、Install、Reinstall、Uninstall、必要な環境を特定できない場合は、ALLのステータスをInstallに設定し、すべてのインストールを選択します.
1)cygwinダウンロードのインストール:http://www.cygwin.com/setup.exe.インストール時には、gccなどのツールが漏れないようにALLを選択します.長い待ち時間(ネットの速度に基づいて、一晩かもしれない)後、cygwinのダウンロードが完了しました.解凍:D:cygwin.Windows環境変数を手動で構成し、D:cygwin;D:cygwinbinをPathに追加します.
Path=...;D:\cygwin;D:\cygwin\bin
検証:コマンドウィンドウcmdを呼び出し、コマンドを入力:cygwinリターン、cygwinツールウィンドウを起動し、実行:
make –v
cygwinが正しいかどうかを確認します.
GNU Make 3.81
Copyright (2006) Free Software Fundation Inc.
...
ダウンロードandroid-ndk-r 4-windows.zipインストールパッケージ、ダウンロードアドレス:
http://developer.android.com/sdk/ndk/index.html
解凍先:D:heliosandroid-ndk-r 4.
本文を書く時、すでに最新のがあります:android-ndk-r 6-windows.zip
android-ndk-r 6を使用する場合は、パスの構成を変更することに注意してください.
2)cygwinとAndroid NDKの統合
編集ファイル:D:cygwinhomeAdministrator.bash_profile、末尾に追加:
# Android NDK
NDK=/cygdrive/d/helios/android-ndk-r4
export PATH="$NDK:$PATH"
保存後、cygwinを再起動します(開始->実行:cygwin).
 
3)NDKを使用してNDKをコンパイルする例:
cygwinを起動します.
d:heliosandroid-ndk-r 4sampleshello-jnijniディレクトリ(または対応するエンジニアリングの*.Cまたは*.CPPファイルが存在するディレクトリ)に入ります.
       #cd/cygdrive/d/helios/android-ndk-r4/samples/hello-jni/jni
ndk-buildコンパイルを実行します.
       #ndk-build
3 Android NDKプロジェクトの例
次に、最も簡単なNDKプロジェクトを作成し、cygwin+NDKをeclipseに統合する方法を示します.
1)eclipseを起動し、メニュー
File->New->Project->+Android--AndroidProject
プロジェクトを作成し、[Next>]ボタンを押してNew Android Projectダイアログボックスをポップアップし、次の内容を入力します.
Priject name:ndkfoo
Android 2.2をチェック
Applicationname: ndkfoo
Package name:com.mine.ndkfoo
Create Activity:ndkfooActivityをチェック
Min SDK Version:8
[Finish]ボタンを押します.
2)プロジェクトndkfooの下にjniディレクトリを作成します(右クリックプロジェクト->New->Folder).
3)jniディレクトリの下にAndroidを作成する.mkファイル、内容は以下の通りです.
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
# Here we give our module name and sourcefile(s)
LOCAL_MODULE  := ndkfoo
LOCAL_SRC_FILES := ndkfoo.c
include $(BUILD_SHARED_LIBRARY)
4)jniディレクトリの下にndkfooを作成する.cファイル、内容は以下の通りです.
#include 
#include 

jstringJava_com_mine_ndkfoo_ndkfooActivity_invokeNativeFunction(JNIEnv* env, jobjectjavaThis) {
	return (*env)->NewStringUTF(env, "Hello from nativecode!");
}
)ndkfooActivityを修正する.JAvaファイル(ndkfoo/src/com.mine.ndkfoo)は以下の通りです.
package com.mine.ndkfoo;

import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;

public class ndkfooActivity extendsActivity {
	//load the library - name matches jni/Android.mk
	static{
		System.loadLibrary("ndkfoo");
	}

	//declare the native code function - must match ndkfoo.c
	privatenative String invokeNativeFunction();

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		// this is where we call the native code
		String hello = invokeNativeFunction();
		newAlertDialog.Builder(this).setMessage(hello).show();
	}
}

6)ndkfooプロジェクトをコンパイルする前に、cygwinのndk-buildコマンドラインを使用してndkfooをコンパイルする必要がある.c:
cygwinを起動します.
D:heliosworkspacedkfoojniディレクトリへ:
# cd/cygdrive/d/helios/workspace/ndkfoo/jni
ndk-buildコンパイルを実行します.
# ndk-build
libndkfoo.soコンパイルに成功しました.
7)eclipseに戻り、ndkfooプロジェクトを再コンパイルします.AVDに配備します(まずAVD->HTC-G 7を起動する必要があります).最も簡単なAndroid NDKプログラムがHTC-G 7仮想マシンで正しく動作していることがわかります.
4 NDKとEclipseの統合
eclipseで上に作成したndkfooアイテムを選択し、Alt+Enterを押してProperties for ndkfooウィンドウを表示します.
左はBuilders、右は[New...]ボタンをクリックして、ポップアップダイアログボックスでプログラムアイコンをダブルクリックし、Edit Configurationウィンドウに次のように入力します.
Name:NDK_ビルダー
Main Tabに切り替え:
Location:
D:\cygwin\bin\bash.exe
Working Directory:
D:\cygwin\bin
Arguments:
--login -c "cd/cygdrive/d/helios/workspace/ndkfoo/jni && $NDK/ndk-build"
Refresh Tabに切り替え、次の項目をチェックします.
Refresh resources upon completion.
The entire workspace
Recursively include sub-folders
Build Optionsに切り替え、次の項目をチェックします.
AllocateConsole
After a Clean
Buring manual builds
During auto builds
During a Clean
Spacify working set of relevant resources
これでNDKとeclipseを統合します.ndkfooを変更するとcファイルの後、cygwinコマンドウィンドウに切り替えることなくndkfooのコンパイルを実行します.
5 Eclipse C/C++開発キットCDTのインストール
この話題はNDKとはあまり関係ない.
次のアドレスページに進みます.
http://www.eclipse.org/cdt/downloads.php
次のように表示されます.
CDT 7.0.2 for Eclipse Helios
Eclipse package: EclipseC/C++ IDE Helios SR2.
p2 software repository: http://download.eclipse.org/tools/cdt/releases/helios.
URLをメモ:
http://download.eclipse.org/tools/cdt/releases/helios
eclipseメニューWindow->Install new Softwareを開き、
Work with:
http://download.eclipse.org/tools/cdt/releases/helios
ボタン[SelectAll],[Next>]を押してCDTをインストールして更新します.完成したら、eclipseでC/C++プログラムを作成、編集、コンパイル、デバッグすることができます(しかし、このようなプログラムは生まれながらにしてAndroid NDKプログラムではありません.より多くの機能オプションは徐々に探求します).