3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

cocos2d-x v3.2をwindows7+genymotionで動かす

Last updated at Posted at 2015-03-15

ほぼ自分用メモ。
目的は**「windows7でcocos2d-xのコンパイルをして、genymotionで動いているのを見る」** です。
コンパイルはコマンドから行っているので、eclipseなどの設定はありません。

まず、cocos2d-xを動くようにする

動いている画面が見られるまで行きませんが、とりあえずcocos2d-xが動くようになるようにします。
(参考サイトいっぱいありますので、すでに知っている方はスキップを)

参考:というかここを見ればよいです(さすが公式)
How to run cpp-tests on Windows | Cocos2d-x

ダウンロードするもの

セットアップ

1. pythonをインストール

  • サイトからダウンロードして、インストール

    version2.7です、3系だと動きませんでした
  • pathを通す(環境変数)

    例:C:\Python27\Scripts; (区切りの;を忘れないように)
  • コマンドプロンプトで確認
cmd
C:\Users\{user}>python --version
Python 2.7.9

2. cocos2d-x をインストール

  • サイトからダウンロードしてインストール

    例: C:\Users{user}\lib 配下
  • setup.pyを実行
cmd
C:\Users\{user}\lib\cocos2d-x>python setup.py
Setting up cocos2d-x...
->Check environment variable COCOS_CONSOLE_ROOT
  ->Search for environment variable COCOS_CONSOLE_ROOT...
    ->COCOS_CONSOLE_ROOT is found : C:\Users\{user}\lib\cocos2d-x\tools\cocos2d-console\bin

->Check environment variable COCOS_TEMPLATES_ROOT
  ->Search for environment variable COCOS_TEMPLATES_ROOT...
    ->COCOS_TEMPLATES_ROOT is found : C:\Users\{user}\lib\cocos2d-x\templates

他にもいろいろ出ますが、とりあえず、 COCOS_CONSOLE_ROOTCOCOS_TEMPLATES_ROOT がセットアップされていればOKです

  • 動作確認
cmd
cocos -h

C:\Users\{user}\lib\cocos2d-x\tools\cocos2d-console\bin\/cocos.py 1.5 - cocos console: A command line tool for cocos2d-x

Available commands:
        run           Compiles & deploy project and then runs it on the target
        luacompile    minifies and/or compiles lua files
        deploy        Deploy a project to the target
        package       Do a package operation
        compile       Compiles the current project to binary
        framework     Do a framework operation
        new           Creates a new project
        jscompile     minifies and/or compiles js files

Available arguments:
        -h, --help      Show this help information
        -v, --version   Show the version of this command tool

Example:
        C:\Users\{user}\lib\cocos2d-x\tools\cocos2d-console\bin\/cocos.py new --help
        C:\Users\{user}\lib\cocos2d-x\tools\cocos2d-console\bin\/cocos.py run --help

次にandroidのコンパイルができるようにする

ダウンロードするもの

  • Java SE Development Kit 8 - Downloads

    android sdkをインストールするときに必要になるので、先にインストールしておくと良いです。

    僕は、jdk-8u40-windows-x64.exe をインストールしました。
  • Android sdk (Download Android Studio and SDK Tools | Android Developers)

    sdk を落としたいのに、studioのダウンロードになってるんだけど・・・と思いましたが、sdkも一緒にダウンロードされますので迷わずstudioをどうぞ。

    sdkのインストール先は、C:\Users{user}\AppData\Local\Android\sdkです。

    tools単体の方は正直良くわからなかったのでスルーです。
  • Android NDK 9r([Android NDK | Android Developers]
    (https://developer.android.com/tools/sdk/ndk/index.html))

    8e出ないと動かないなどの記事も見ましたが、動作確認できたのは、9rでした。

    platformが足りないらしいので、9rからコピればいいのかもしれません。

    また、公式のリンクからだと最新しかダウンロード出来ないので、「android ndk 旧バージョン」などで検索すると見つかると思います。
  • Apache Ant - Welcome

    Binary Distributions をダウンロードしてインストール
  • Cygwin

    インストールするときに、makeもインストールしてください。

    makeで検索して、develってやつをinstall状態にしてればOKです。

    最近のcocosでは不要という記事も見ました。

    僕は先に設定してしまったので不要かはわかりません。

環境変数のセットアップ

最終的に以下の環境変数をセットしないと、コマンドからはコンパイルできませんでした。
インストール or ダウンロード環境に合わせて設定してください

  • ANDROID_SDK_ROOT

    C:\Users{user}\AppData\Local\Android\sdk
  • NDK_ROOT

    C:\Users{user}\lib\android-ndk-r9
  • ANT_ROOT

    C:\Users{user}\lib\apache-ant-1.9.4\bin
  • JAVA_HOME

    C:\Program Files\Java\jdk1.8.0_40
  • path (追記)

    C:\cygwin\bin;

    C:\Python27;

    C:\Python27\Scripts;

    C:\Users\yuichi\AppData\Local\Android\sdk\platform-tools;

    C:\Users\yuichi\AppData\Local\Android\sdk\tools;

    C:\Users\yuichi\lib\android-ndk-r9;

sdkのインストール

  • android sdkの、フォルダ直下の SDK Manager.exe をダブルクリック

    必要なものをダウンロードしてください。

    今回の動作確認では、Tools、Extras、Android4.4.2 (API19)あたりをダウンロードしました。

プロジェクトの作成

  1. コマンドでプロジェクトを作成する
cmd
cocos new emptyGame -p com.company.group -l cpp -d C:\workSpace
  1. コンパイルする
cmd
cocos run -s C:\workSpace\emptyGame -p android --ap android-19

いろいろログが出て、最終的に waiting for devicesと表示されれば成功です。
エラーが出る場合は、自分の場合、大体は環境変数が間違っていました。

エミュレータで動かす

  • android sdkの、フォルダ直下の AVD Manager.exe (Android Virtual Device) をダブルクリック
  • create...ボタンを押して、デバイスを作成する

    こんなかんじの設定

    ・AVD Name:sampleDevice

    ・Device:Nexus 7

    ・Target:Android 4.4.2 - API Level 19

    ・CPU/ABI:ARM(armeabi-v7a)

    ・Emulation Options:Use Host GPU

     チェックを入れておかないと、起動時に落ちます
  • start... ボタンを押して起動
  • エミュレータで起動
cmd
cocos run -s C:\workSpace\emptyGame -p android --ap android-19

起動したエミュレータにcocosのhello worldが表示されればOKです

genymotion で起動する

genymotionのインストール

Oracle VM VirtualBox
サイトからダウンロードしてインストール

コンパイルしたバイナリの転送をできるようにする

Genymotionにアプリを転送しようとすると「INSTALL_FAILED_CPU_ABI_INCOMPATIBLE」エラー → 解決 | CreativeStyle
[GUIDE] Genymotion | Installing ARM Translat… | Android Development and Hacking | XDA Forums
・genymotionのエミュレータをを作成して起動
・ARM Translation Installer v1.1.zip をダウンロードして、エミュレータ画面にドラッグアンドドロップ
・エミュレータの再起動

jni/Application.mkを修正

Application.mk
APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11 -fsigned-char -U__SSE__
APP_LDFLAGS := -latomic
APP_ABI := armeabi x86

-U__SSE__、と APP_ABI := armeabi x86 を追加しています。

エミュレータで起動

cmd
cocos run -s C:\workSpace\emptyGame -p android --ap android-19

起動したエミュレータにcocosのhello worldが表示されればOKです

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?