LoginSignup
1
0

More than 3 years have passed since last update.

Cocos2d-x 2.2.6 のサンプルアプリを起動する(iOS)

Last updated at Posted at 2021-03-31

はじめに

cocos2d-x 2.2.6 を C++API の利用を前提にセットアップして画像のようなサンプルアプリを Android Emulator & iOS Simulator 上で起動させることをこの記事のゴールとします。
v3系はCocos2d-x 3.17.2 のサンプルアプリを起動する(iOS / Android)をご確認ください。

Simulator Screen Shot - iPhone SE (2nd generation) - 2020-08-06 at 00.46.01.png

環境

  • cocos2d-x 2.2.6
  • Xcode 12.4 (12D4e)
  • Python 2.7.17

導入手順

Cocos2d-x本体と依存関係のダウンロード

1. リポジトリをcloneする

$ git clone git@github.com:cocos2d/cocos2d-x.git

2. cocos2d-x-2.2.6をcheckout

$ cd cocos2d-x
$ git checkout -b feature/cocos2d-x-2.2.6 tags/cocos2d-x-2.2.6

3. 依存関係をダウンロードする

依存関係をcocos2d-x-3rd-party-libs-binからダウンロードします。(python)

$ python download-deps.py

動作確認用のプロジェクトを作成する

cocosのv2ではcocosコマンドはありません、create_project.py でプロジェクトを作成します。(python2系が必要です。)

$ cd tools/project-creator
$ python create_project.py -project MyGame -package com.MyCompany.SampleGame -language cpp

iOSプロジェクトを実機でビルドする

1. iOSプロジェクトを開く

$ cd projects/MyGame/proj.ios
$ open MyGame.xcodeproj

2. Bundle version stringが空になっているので設定します。

info.plist
<key>CFBundleShortVersionString</key>
<string>0.0.1</string>

3. C++ Standard Libraryを libc++ に変更する

アプリケーションのターゲットと、cocos2d-x本体両方変更してください。
また、c++ language dialect を c++11 [-std=c++11]に変更しないと文字列リテラルが使えません。
必要に応じてそれも設定してください。
スクリーンショット 2021-03-31 22.04.05.png

スクリーンショット 2021-03-31 22.04.30.png

4. Enable Bitcode を NO に変更

アプリケーションのターゲットと、cocos2d-x本体両方変更してください。

5. Deployment Target を 9に変更

アプリケーションのターゲットのみ5.1.1->9に変更します。

Signingを修正すればここまでで実機で実行できます。

iOS Simulatorで実行する

1. EXCLUDED_ARCHSでiOS Simulatorの時にarm64を除外する。

参考:https://zenn.dev/yimajo/articles/7e275bc23999fe7d8b87
スクリーンショット 2021-04-07 16.05.03.png

2. User-DefinedのVALID_ARCHSを削除する

VALID_ARCHSは、x86_64が入ってないかつ非推奨なのでプロジェクト側のBuild Settingsから項目ごと削除します。
https://developer.apple.com/documentation/xcode-release-notes/xcode-12-release-notes

これでシミュレーターでも実行できるはずです、以上。

1
0
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
1
0