「魔法少女戦記外伝」DL委託販売中!!

DMM 同人様 Melonbooks DL様 DLsite.com 様
DMM 同人様 Melonbooks DL 様 DLsite.com 様



最新記事ほか

【cocos2d-x】Windows で cocos2d-x3.1.1+Android 環境を構築

以前に「【cocos2d-x】Windowsでcocos2d-x+Android環境を構築した際に出た不具合とその対策」という題名でcocos2d-x 2.2.3環境を構築する記事を書いていたのですが、この記事の最後で「この記事の1週間後くらいに「cocos2d-x Ver.3.0 正式リリースしました!」なんて言われたら泣きたくなりますねw」とか書いたら、本当に1週間も経たないうちにVer.3.0 が正式にリリースされたんですよ!(´;ω;`)


「もうVer.2.xで良いじゃん・・・」とかふて腐れていたんですが、色々と調べてみると「便利だから乗り換えよう!」みたいな話をちらほらと見かけたので乗り換えを試みたところ、またまた悪戦苦闘を繰り広げてしまったので備忘録の意味も兼ねて記事にしてみました。




というわけでいざVer.3.x環境を作ろうとして色々と調べたところ、下記サイト様にて丁寧な導入解説を見かけましたので「あら?意外と簡単にできるのかな?」なんてのぼせ上がっていたら見事にドツボに嵌まってしまったので、下記サイト様の手順から+αで私が行った作業を書いていきます。

参考:Cocos2d-x開発環境の構築 (ぎじゅつめも様)


■プロジェクトのインポートで苦戦

構築作業を上記サイト様の解説を基にして進めていたのですが、「Android環境構築」でつまずきました。
つまずいた箇所はAndroid版「6.Cocos2d-xライブラリプロジェクトを追加」になるのですが、Eclipse の仕様(?)だと思うのですがWindows環境固有のクセが原因で色々と嵌まってしまいましたorz

Android版「6.Cocos2d-xライブラリプロジェクトを追加」の手順ですと、

D:\projects\MyGame\cocos2d\cocos\2d\platform\android\java


という感じでプロジェクトフォルダ内にあるcocosフォルダを参照することになっているのですが、これを見たとき「もしかしてプロジェクト作るたびに毎回ワークスペースを指定してプロジェクト内のライブラリを毎回指定するの?」と疑問を感じました。
これはどうにかしてライブラリフォルダ内の情報(手順通りだとC:\cocos2d-x\cocos2d-x-3.x)を直接参照して多数のプロジェクトで共通化できないかな?と思い、以下のような場所を参照するように実装を試してみました。

20140617_cocos00.png

これがうまくいけば毎回ワークスペースを指定したり、ライブラリを追加する手間も省けて楽になるんじゃ・・・と思っていたのですが、作成したプロジェクトで以下のようなエラーが発生しました。

Cocos2dxActivity を型に解決できません AppActivity.java
インポートされた org.cocos2dx.lib は見つかりません AppActivity.java


早速プロジェクトのプロパティを見てみると、ライブラリが正しく参照されていませんでした。

20140617_cocos01x.png

説明通りプロジェクト内のライブラリ「D:\projects\MyGame\cocos2d\cocos\2d\platform\android\java」を指定していれば問題なく実行はできるのですが、今後増えていくだろうと思われるプロジェクトのことを考えると、どうにか実現させないとあとあと面倒になりそうなので色々と調べてみました。

調べてみた結果、以下のリンクを見つけました。

【Android開発】【Eclipse】Androidライブラリがプロジェクトと違うドライブに存在すると参照できないThe Dark Zone様)

私の場合、cocos2d-xのライブラリファイルをCドライブ、開発プロジェクトをDドライブに配置していましたので、まさにこちらで指摘されている情報がビンゴでした。
UNIX系の環境では全てのドライブが「/(ルートフォルダ)」にぶら下がっているという構想で構築された環境なので、ドライブが違っていても「/(ルートフォルダ)」を経由することによって相対位置で違うドライブを参照することが容易なのですが、Windows環境では違うドライブは別物として扱われ、相対的な参照では見ることができず、絶対パスを要求されてしまうため今回の問題が発生した・・・といった感じでしょうか?

ということは、Vista以降で見られる下図のようなツリー表示って飾りなんですかね?

20140617_cocos015.png

てっきり、「コンピューター」の部分がUNIXの「/(ルートフォルダ)」に近い機能を持つものだと思っていたんですがw

そんな冗談はさておきw
原因が判明したので、さっそく対策です。

20140617_cocos02.png

最初に追加したライブラリプロジェクトを削除し、リンクにも記載されていた通り「プロジェクトをワークスペースにコピー」にチェックを入れた状態で改めてインポート。

20140617_cocos03x.png

「プロジェクトをワークスペースにコピー」にチェックを入れることにより、同じドライブにライブラリプロジェクトがコピーされ、無事にビルドができるようになりました。


というわけで私の環境でもcocos2d-x Ver.3.x開発が可能となったのですが、今回の件で色々調べていると開発環境を Mac にしている方がいっぱいいらっしゃるということを痛感しました。
もちろんあの端末も視野に含めているからこそだとは思うのですが、個人的には証明書などの手続きが複雑すぎてあまり触りたくないのが本音ですw


ではでは今回はこの辺で~ノシ


謝辞:
cocos2d-x Ver.3.x開発環境を構築するにあたり、ぎじゅつめも様、The Dark Zone様の記事のおかげもあり、私の環境でも無事に開発できる状況に至りました。厚く御礼申し上げます。

スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

Empress

Author:Empress
同人サークル「Atelier Empress」を立ち上げてしまった愚か者です。少しずつでも作品を公開していければと思う次第でございます。

検索フォーム
リンク
カテゴリ
タグ一覧

同人 Unity 進捗 雑記 コミケ C89 小ネタ プログラミング Unity小ネタ 年末 新年 Android 

委託販売
スポンサード リンク
FLOWER KNIGHT GIRL オンラインゲーム 千年戦争アイギス オンラインゲーム
Twitter