« Windows XPで動かすには… | トップページ | Windows XPで動かすには…その後 »

2015年3月14日 (土)

再びAndroid向けにビルドしてみる

随分昔にAndroid向けにビルドしたことがあったのですが、実装自体もほぼ固まったので再びツールを最新に更新して試しました。手順を追って書きます。前回はLinux上でビルドしましたが、今回はWindows(Cygwin)上で。

1,Qt5.4.1 for Androidをダウンロードします

http://download.qt-project.org/official_releases/qt/5.4/5.4.1/qt-opensource-windows-x86-android-5.4.1.exe

2,Qt5.4.1 for Androidをインストールします

c:\Tools\develop\Qt\Qt5.4.1_x86_android にインストールしました。

3,PATHを設定します

PATH=/c/Tools/develop/Qt/Qt5.4.1_x86_android/5.4/android_armv7/bin:${PATH}

4,NDKをダウンロードします

http://dl.google.com/android/ndk/android-ndk-r10d-windows-x86.exe

x86_64もありますが、ここではx86を選択します。qmakeがデフォルトでx86向けにMakefileを作るようなので。

5,NDKを展開します。

c:\Tools\develop\android にexeをコピーして展開しました。カレントディレクトリに展開されるようになっています。

6,環境変数ANDROID_NDK_ROOTを設定します

ndkを展開した場所を設定します。

 set ANDROID_NDK_ROOT=c:\Tools\develop\andoird\android-ndk-r10d

Cygwin表記でなくDOS表記でなければなりません。私はRapidEnvironmentEditorで個人設定を追加しました。

7,NDKへのPATHを設定します

PATH=/c/Tools/develop/android/android-ndk-r10d:${PATH}

8,qmakeを実行します。

これでAndroid用の実行バイナリのビルドを行うMakefileが出来上がります。ソースコードは一行も変更していません。

前回と異なるのはQtで閉じていないという点です。前回はQtNetworkを使いましたが、今回はWindowsではWinSockを使いますし、Linuxではsocketを使います。Q_OS_WIN、Q_OS_LINUXというマクロで切り分けているので実装不足のエラーとなるだろう思っていました。本当はQ_OS_ANDROIDで記述すべきなのだろうと思っていました。

どんな感じでエラーが出るだろうかと思いビルドしていましたが…なにごともなく終了しました。

libqtbrynhildr.soも出来上がってます。

調べてみたら、Q_OS_ANDROIDに加えてQ_OS_LINUXも定義されているようです。ということでネットワーク周りはそのまま使えるかもしれません。

後はこのNativeコード(libqtbrynhildr.so)のエントリーポイントを呼び出すJava wrapperを作ればよさそうなんですが、なんか手順とか作法とか面倒そうですね…

« Windows XPで動かすには… | トップページ | Windows XPで動かすには…その後 »

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: 再びAndroid向けにビルドしてみる:

« Windows XPで動かすには… | トップページ | Windows XPで動かすには…その後 »