Help us understand the problem. What is going on with this article?

Cocos2d-xをEclipseを使わずにビルド&実行する

More than 5 years have passed since last update.

Cocos2d-xのプロジェクトをEclipseを使わずにビルドしたい場合の手順をまとめました。

  • これはEclipseを始めから一切使わない方法ではありません
  • 使用するcocos2d-xのプロジェクトは既にEclipseでビルド、実行まで動作する状態の物が用意されている事が前提です
  • 以降もプロジェクトのビルドがEclipse上、コマンドプロンプト上のどちらからも自由に行える環境を目指します
  • antadb のセットアップが必要になります
  • インストールするファイルや展開先は具体性の為に一例を書いています

antのセットアップ

antをダウンロードします

もしJavaをインストールしていない場合はこちらもダウンロードします(恐らくしていると思います)

環境変数の追加

Windowsの環境変数に以下の項目を追加します
※値は一例です

変数
JAVA_HOME C:\Program Files\Java\jdk1.7.0_51
ANDROID_SDK C:\project\cocos2d-x\adt-bundle-windows-x86_64-20131030\sdk

合わせて環境変数のPATHに以下を追加し、adbやantが呼び出せるようにします

%ANDROID_SDK%\platform-tools;
%ANDROID_SDK%\tools;
C:\project\library\apache-ant-1.9.3\bin;

build_native.shの編集

build_native.sh を開き、Eclipse以外からでも実行ができるように #pathsの下にNDK_ROOTを追加指定します

# paths
NDK_ROOT="/cygdrive/c/project/library/android-ndk-r9c"

batファイルの作成

proj.android のフォルダに以下のbatファイルを用意します

build.bat

プロジェクトのビルドを行うbatファイルです

bash -e build_native.sh
ant debug -Dsdk.dir=%ANDROID_SDK%
  • ant debugの代わりに ant releaseとすればReleaseビルドも作成できます

clean.bat

クリーンビルド用batも作ります
上手くBuildが通らない時は一度clean.batを呼び出すと解決する事があります

ant clean -Dsdk.dir=%ANDROID_SDK%

debug.bat

パッケージのインストールと起動までを行うbatです
このファイルには簡単の為にパッケージ名やアクティビティ名を直接記述しています

adb install -r bin/TestProject-debug.apk
adb shell am start -n com.test.testproject/.TestProject
  • apk パッケージ名は proj.android/bin ディレクトリの下に [プロジェクト名]-debug.apk のファイル名で作成されています(debugビルドの場合)
  • プロジェクト名は proj.android/build_native.sh の一番上にも書かれています

  • 2行目の書式は adb shell am start -n [パッケージ名]/[アクティビティ] となっています。

  • アクティビティ名は proj.android/AndroidManifest.xml の activity の項目から確認する事ができます

  • パッケージ名も proj.android/AndroidManifest.xml の packageから確認できます

実行

上記batファイルを呼び出す事で直接プロジェクトのビルド、インストール、起動が可能になります
また、変わらず同じプロジェクトをEclipse上でビルドする事もできます

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした