*

Macでcocos2dxをiOSとAndroid向けにビルド

公開日: : Android, cocos2d-x, iOS, 開発環境

Cocos2dx portrait

前回Androidの開発環境をセットアップでAndroidの開発環境が準備をしました。

今回ははcocos2dxのサンプルをiOSとAndroidそれぞれでビルドしました。

Android NDKをダウンロード

Androidでcocos2dxを使うには、Android SDKとAndroid NDKが必要になります。

Android-SDKについては、すでにインストールが終わっているので、Android NDKを追加します。

  • http://developer.android.com/tools/sdk/ndk/index.html
  • 開発機のMacが64bitで、targetアプリは32bitにしたいので、Platform(32-bit target)のMac OS X 64-bit android-ndk32-r10-darwin-x86_64.tar.bz2をダウンロードしました。

    iPhoneはiPhone5sで採用されたA7チップから64bit化され、Androidも年内に64bit版が出る見込みのようです。

  • http://gigazine.net/news/20140425-64bit-android-come-late2014/
  • 今回使用するcocos2dxのバージョンが2.2.2と少し古いですが、こちらも64bit対応はしていないようです。

  • http://kyokomi.hatenablog.com/entry/2014/03/12/144131

    cocos2d-xでサンプルプロジェクト作成

    以下のコマンドでサンプルを作成しました。

    python create_project.py -project test -package com.sola_air.game.sample -language cpp

    xCode(iOS)でコンパイルエラーになる

    proj.iosにあるsample.xcodeprojを開いてコンパイルすると、
    arm云々というarchitecture関連のエラーが出た(よくでるやつ)ので、プロジェクトの設定で[Build Settings]-[Architectures]を修正します。

  • [Build Active Architecture Only]をYesに設定する
  • [Valid Architectures]を”armv6 armv7 armv7s”に設定する

    注意点は、プロジェクトはsampleとcocos2dxの2つがあり、それぞれでPROJECTとTARGETSの設定があるので4箇所確認することです。

    再度、ビルドすると今度はstd系のエラーが表示されるました。

    こちらはプロジェクトの[Build Settings]-[C++ Standard Library]を修正しました。

  • “libc++(LLVM C++ standard library with C++11 support)に設定

    またiOS5.x以上が必要というメッセージがでたので、あわせてプロジェクトの設定で[General]-[iOS Deployment Target]を6.0にしました。

    Android向けビルド

    cocos2dxではC++11で拡張された機能をいくつかつかっているので、コンパイラにC++11を指定します。
    proj.android/jni/Applicatin.mkの最後に以下の行を追加します。

    APP_CPPFLAGS += -std=c++11
    NDK_TOOLCHAIN_VERSION := 4.8
    

    proj.androidに移動して以下のコマンドでビルドします。

    ./build_native.sh
    

    ここでsdk.dir missing errorが発生しました。

    sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var
    

    README.mdの最後に対処方法が書いてあったので、これを実行して解決(実行する端末を接続してから行う必要がある)

    If the last command results in sdk.dir missing error then do: 
    
        $ android list target
        $ android update project -p . -t (id from step 6)
        $ android update project -p cocos2d-x/cocos2dx/platform/android/java/ -t (id from step 6)
    
    

    XPERIA(SO-03F)で動作確認

    まずXPERIAを開発モードにして、USBデバッグを有効にしておきます。

  • [設定]-[端末情報]-[ビルド番号]を数回タップする
    つぎにUSBデバッグを有効にします。

  • [設定]-[開発者向けオプション]-[USBデバッグ]をチェックする

    接続しなおして、コンソールから以下のコマンドで接続している端末を確認

    #adb devices

    サンプルアプリをインストールします

    adb debug install

    Cap

    参考

  • http://qiita.com/CsStay47/items/72c60f7435ccda4d55e9
  • http://crimsonwoods.hatenablog.com/entry/2012/12/31/024649
  • Sponsored Link

    関連記事

    5017d1a195d95dfed9f60e9fd5d82c13.png

    苦手な英語の発音を真面目に考えてみた

    最近、英語の発音に真面目に取り組んでます。 これまで読み書きが中心で、リスニングやスピーキン

    記事を読む

    test.JPG

    水槽を立ち上げ!

    職場で海水魚の飼育を始めました。 数年前、葛西臨海公園の水族館で初めて見たときに惚れてしまっ

    記事を読む

    ace.png

    イーモンv2.3申請

    やっとv2.2がリリースされ、本日v2.3をAppleに申請しました。 v2.3の主

    記事を読む

    blog.png

    cocos2d-x v2.2からv3.3rc0 その2

    イーモンを鋭意更新中です。 アイキャッチは魔法使いの高ランク装備グラです。 coc

    記事を読む

    ace.png

    イーモン v2.2審査

    v2.2を審査に出しました! イーモンxエースクラウンの特別クエストが追加されます!

    記事を読む

    kii1.png

    Kii Cloudオブジェクトエディタ

    現在作成しているゲームで使うMBaasとしてKii Cloudを検討しています。 和製のMBa

    記事を読む

    icloud.jpeg

    アプリからiCloudを使うための準備

    iOSではアプリがiCloud上にデータを保存するための仕組みが提供されている。 iCloudは

    記事を読む

    blog.png

    【Mac】CornerStoneが起動しなくなったとき

    the last time you opened Cornerstone it unexpe

    記事を読む

    e687ddcd50e4b3f12bf612b540179c58.png

    水槽立ち上げて3週間

    茶ゴケや緑ゴケをクリアしながら、順調に水槽が育ってます。 仲間も増えてきました。 現在の

    記事を読む

    2015_ec1.png

    イーモン プレビュー動画

    動画2作目、お正月っぽく

    記事を読む

    Sponsored Link

    Message

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    Sponsored Link

    • 発音辞書イーモン
    • English Monsters
    • sLog(時間管理アプリ)
    • 生粋のC++プログラマーです。 最近は、Objective-Cやxcode、cocos2d-xなどを学びながらiPhoneアプリを開発しています。

    Google+ Google
    PAGE TOP ↑