iOS용 게임을 개발할때 coco2d를 사용했었는데, 잠깐 한들여다본 사이에 cocos2d-x라는 것이 나와서 모든 플래폼에서 게임을 개발할수 있게 아예 cpp로 소스를 전부다 만들어놓은것이 나와있었다.


iOS용은 Objective-C로 되어 있었기 때문에 그냥 빌드할때 프로젝트만 추가해서 빌드하면되었는데, 윈도우에서 Android용 게임을 한번 개발해볼까 하고 cocos2d를 설치할려고 하니 개발환경 설치도 ... 하나의 일이된것 같다. 그래서 정리해둔다...


준비물(정말 아래대로 준비해둬야 한다.) - eclipse,JDK, Android SDK는 설치되어 있다는 가정하에 ..

1. Cygwin(Windows 환경하에서 Linux Build환경을 사용하기 위해서 설치필요)

 -  http://cygwin.com/install.html에서 Setup.exe를 다운받고 실행시키면 된다. 설치 패키지중 Devel,Editor 패키지정도는 install로 바꿔서 설치




2. Customized Android NDK (Native Development Kit)(기본 NDK가 아닌 stl을 지원하는 Crystax의 NDK를 반드시 설치해야 한다.) 

 - http://www.crystax.net/ko/android/ndk/7#download

 - 최신 버전으로 다운받고 압축 풀어두면 됨(이걸 모르고 기본 NDK로 cocos2d-x  빌드하려고 무려 3시간을 낭비 했다 ㅠ.ㅠ)

 - 그리고 빌드중 계속 stl , std:: link에러가 나오면 반드시 prog.android\jni\Application.mk 파일을 열어서 아래와 같이 수정해줘야 한다.

    APP_STL := gnustl_static  -->  APP_STL := stlport_static


3. cocos2d-x  다운로드후 압축 풀기 

 - http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Download


압축을 다 해제하고, 설치를 끝낸 후 디렉토리의 모습







준비는 이제 다 끝났으니, 본격적으로 cocos2d를 사용하기 위해서는 환경설정도 맞춰줘야 되고, cygwin 설정 그리고 project설정을 맞춰줘야 한다.해보자

1. windows에 path 추가

 - 환경변수 설정에서 path에 다음두개를 추가해두기.

 -  D:\Android\android-sdks\tools;D:\cygwin\usr\include


2. cygwin terminal을 열어서 .bashrc 수정

 export PATH=$PATH:/cygdrive/d/Android/android-ndk-r7-crystax-5

 export ANDROID_NDK_ROOT=/cygdrive/d/Android/android-ndk-r7-crystax-5

 export NDK_ROOT=/cygdrive/d/Android/android-ndk-r7-crystax-5   --> 이건 프로젝트 생성하면 설정되지만, 그냥 추가해둠.


3. 수정된 .bashrc 반영

 source ~/.bashrc


4. cocos2d-x 프로젝트 설정 수정

D:\Android\cocos2dx\cocos2d-2.0-x-2.0.4\create-android-project.bat 파일이 안드로이드용 프로젝트를 생성해주는 스크립트(열어서 환경설정변경)

:: modify it to work under your environment  

set _CYGBIN=D:\cygwin\bin

if not exist "%_CYGBIN%" echo Couldn't find Cygwin at "%_CYGBIN%" & pause & exit 4


:: modify it to work under your environment

set _ANDROIDTOOLS=D:\Android\android-sdks\tools

if not exist "%_ANDROIDTOOLS%" echo Couldn't find android sdk tools at "%_ANDROIDTOOLS%" & pause & exit 5


:: modify it to work under your environment

set _NDKROOT=D:\Android\android-ndk-r7-crystax-5


5. Windows cmd 열어서 cocos2d-x 용 안드로이드 프로젝트 생성.

D:\Android\cocos2dx\cocos2d-2.0-x-2.0.4\create-android-project.bat을 실행하면 됨.

자신이 추가해둔 sdk 에 따라서 생성할수 프로젝트 들이 나오는데 그중에 하나를 선택하면 됨 예를 들면 아래 처럼하면 됨



6. cygwin에서 shared library 빌드하기.

자신이 생성한 프로젝트 디렉토리로 가서 build 하기(helloworld로 프로젝트를 만들었다면 아래와 같이 하면 됨)




7. eclipse 에서 작업하기
eclipse에서 위에서 생성한 helloworld 프로젝트를 열면 됨.
에러가 나는 경우는 Java Compiler 가 맞지 않을 경우와 cocos2d-x 라이브러리가 없을때인데 아래와 같이 해결하면 된다.

Java Compiler는 1.6으로 맞춰주고 ....



cocos2d Library가 없다고 에러가 나면.... 아래 lib 폴더를 복사해서 아래 eclipse의 패키지처럼되게 넣으면 된다.






실행해보면~~~~~ 이렇게 나온다. 이제 준비끝.... 아흑,.. 삽질을 좀 했다.



iOS게임으로 만들었던 BlueOcean을 Android에 그대로 포팅해봐야 겠다.

'코딩하고 > C,C++' 카테고리의 다른 글

큰 정수 계산하기  (0) 2016.03.27
OS - Page Fault Simulation(FIFO,LRU,Optimal)  (0) 2012.10.21
자료구조 - 계산기 만들기  (10) 2012.10.12
C언어로 만든 객체  (0) 2012.10.11
자료구조 - 다항식 연산하기  (2) 2012.10.10
블로그 이미지

커뉴

이 세상에서 꿈 이상으로 확실한 것을, 인간은 가지고 있는 것일까?

,