Table of Contents
新しく macOS のデバイスを購入しました。折角なので、出荷直後の状態から Cocos2d-x(3.15.1) の開発環境を作ったときの手順についてまとめます。OSは Sierra のバージョン 10.12.6 です。
基本的にはCocosの公式サイトからリンクが貼られている以下のドキュメントの手順通りですが、この記事を書いた時点では、ドキュメントの方には一部古い情報がそのままである部分がありました。
Cocos2d-x Tutorial Series: Installation, Creating a Project and Hello World
Cocos2d-xに必要なもの
ドキュメントによると、以下のプログラムやファイルが必要となります。
- Cocos2d-xの本体
- Python 2.7.x(Python 3.x ではダメだそうです)
- JDK
- Android SDK
- Android NDK
- Apache ANT
macOSには、Python 2.7.10 がデフォルトでインストールされています。したがって、それ以外の5つをインストールする必要があります。
Cocos2d-xの本体をダウンロード
まず、公式ページのダウンロードページから、Cocos2d-xの本体をダウンロードします。
ダウンロードできたら、書類フォルダ(Documentsフォルダ)に移動しておいてください。
JDKのインストール
Java開発キット(Java Development Kit : JDK)をインストールします。
以下のダウンロードページを開き、インストーラをダウンロードしてください。
Java SE Development Kit 8 – Downloads
ダウンロードしたインストーラを起動し、指示に従ってインストールを行ってください。
Android SDK のインストール
Android向けアプリを作成するために必要な開発キットです。
Androidの公式IDEである「Android Studio」をインストールすると Android SDK を同時にダウンロードすることができますが、これに関して注意が必要な点があります。
Cocos2d-x は現在のところ、最新版の Android SDK(バージョン25.3以降)を使ったビルドが正常に動作しません。
これは、後述する ANT が最新版に対応していないためです。以下のようにビルド時にエラーが発生します。
したがって、少し古いバージョン(25)を使用する必要がありますが「Android Studio」では、基本的に最新版のバージョン(26以降)しかダウンロードすることができません。
そこで、以下のダウンロードページの最下部にあるコマンドラインツールを使って、古いバージョンの Android SDK をダウンロードします。
Android Studio と SDK ツールをダウンロードする | Android Studio
このサイトから、コマンドラインツールを入手してください。
ダウンロードしたツールの中身は以下のようになっていると思います。
この中の sdkmanager という実行ファイルをターミナルで使用して、SDKの古いバージョンをダウンロードします。
具体的には、以下の3つのコマンドを使用します。
./sdkmanager "build-tools;25.0.0" ./sdkmanager "platforms;android-25" ./sdkmanager "platform-tools"
一つ目のコマンドを入力すると、以下のように利用規約が表示されますので y を入力して同意してください。
これらのコマンドを入力し終えると、以下のようにファイルがダウンロードされているはずです。
次に、tools 自体も古いバージョンにします。以下のアドレスにアクセスすると、バージョン25.0.0の tools が入手できます。
http://dl-ssl.google.com/android/repository/tools_r25-macosx.zip
このURLの「25」の部分を各バージョンの番号に変更すると、そのバージョンの tools がダウンロードできるようです。
(参考: eclipse – Where can I download an older version of the Android SDK? – Stack Overflow)
このダウンロードした tools で、もともとあった tools を上書きしてください。これと、先ほどコマンドラインでダウンロードした4つのファイルを合わせてフォルダにまとめて書類フォルダに移動してください。
フォルダ名はなんでも構いませんが、ここでは「android-sdk-25」としています。
(古い Android SDK をダウンロードする効率の良い方法は、他にもあるかもしれません)
Android NDK のダウンロード
NDK(Native Development Kit)のダウンロードは、以下のサイトから行います。
NDK のダウンロード | Android Developers
ダウンロードした最新版のNDK(android-ndk-r14b-darwin-x86_64.zip)を解凍してできたフォルダを書類フォルダに移動します。
場合によっては最新のNDKで上手く動かない場合があります。そのようなときは以下のページから古いNDKをダウンロードしてみて下さい。
NDK Archives | Android Developers
Apache ANT
Javaのビルドツールである ANT のダウンロードは、以下のサイトから行います。
Apache Ant – Binary Distributions
最新版(1.10.1)をダウンロードし、書類フォルダに移動します。
Cocos2d-xの設定
以上で必要なファイルは全て揃ったはずです。書類フォルダの中身が以下のようになっていることを確認してください。
ターミナルで、カレントディレクトリをCocos2d-xのフォルダに変更し、以下のコマンドを入力してください。
./setup.py
すると、順番に NDK、Android SDK、ANTのルートディレクトリを入力するように促されます。
それぞれ以下のように入力してください。
ANTだけは、中身の bin というフォルダのパスを指定してください。他の2つは、書類フォルダにあるパスをそのまま指定します。
以上3つのパスを無事設定できれば、Cocos2d-xを使う準備は完了です。
もしパスを間違えて入力してしまった場合は、ホームディレクトリにある .bash_profile を手で修正するか、.bash_profile 内の以下の部分を全て削除してターミナルを再起動し、再度 setup.py を実行してください。
Cocos2d-xのプロジェクトの作成・実行
以下のコマンドを入力して、プロジェクトを作成してみてください(今回は javascript をプロジェクトの開発言語に選んでいますが、C++も選択可能です)。
cocos new -l js
初回は、データの送信に関する同意事項についてのメッセージが現れますので y または n を入力してください。すると、カレントディレクトリに新しいフォルダ「MyJSGame」ができます。
次に、その「MyJSGame」をカレントディレクトリとして、以下のコマンドを入力してください。
cocos run -p web
これは、ブラウザアプリとしてプロジェクトを実行するコマンドです。
問題がなければブラウザが立ち上がり、以下の画面が表示されます。
Androidアプリのビルド
以下のコマンドを入力して「BUILD SUCCESSFUL」と表示されればAndroidアプリも無事にビルドできています。
cocos compile -p android --ap android-25
初回は、多くのファイルのコンパイルなどが行われるため、少し時間がかかります。
iOSアプリのビルド
プロジェクト内の以下のディレクトリに、Xcodeのプロジェクトが存在します。
frameworks > runtime-src > proj.ios_mac
これをXcodeでビルドおよび実機で実行して問題がなければ、iOSアプリのビルドも完了です。
おしまい
以上、Cocos2d-xの開発環境の作成方法でした。
今回の準備もそうでしたが、特に管理が大変なのは Android です。Android関係のソフトウェアが自動でアップデートされると、突然ビルドできなくなることもあります。
逆に、アップデートによって今回使えなかった最新版のSDKなどが使用できるようになるかもしれません。各ソフトウェアの今後のバージョンアップに注目です。
場合によってはバージョンのダウングレードが必要になりますので、古いバージョンのライブラリなどを残しておくと良いかもしれません。