지난 포스트에서는 이클립스에  C++ 소스 파일 및 플러그인을 추가하고 통합 빌드하는 하는 부분을 다뤘다. 이어서 C++ 소스 파일에 표시되는 경고를 사라지게 함으로써 이클립스에서 C++ 파일을 편집할 수 있도록 해보겠다. 


  jni/helloworld/main.cpp 파일을 열어보면 아래 사진과 같이 경고가 표시되는 것을 볼 수 있다. 이것은 C++ include 파일들의 경로를 제대로 설정해 주지 않아서 나타나는 현상이다. 



  Package Explorer에서 프로젝트를 선택한 뒤 마우스 오른쪽 버튼을 누르고 Properties를 선택한 뒤, C/C++ General -> Path and Symbols -> GNU C++  선택한다. 그리고 아래 두 개의 경로를 추가해 준다.


 $(NDKROOT)/platforms/android-9/arch-arm/usr/include 

 $(COCOS2DX_HOME)/cocos2dx/include


  여기서 $(NDKROOT)와 $(COCOS2DX_HOME)는 각자 실제 디렉토리의 절대 경로로 바꿔줘야 한다. 여기까지 하면 아래와 같이 상당 부분 경고 표시가 사라진다.


  이제 게임 소스에 해당하는 디렉토리 (/Classes)의 경로를 추가해 줘야 한다. 역시 Properties 창을 열고, C/C++ General -> Path and Symbols -> Soruce Location 을 선택한다. 그리고 Link Floder.. 버튼을 누른 다. 그 다음 Link to folder in the file system 을 체크해 주고 Browse 버튼을 눌러서 프로젝트 홈 디렉토리 아래에 있는 /Classes 디렉토리를 선택해 준다.


  여기까지 하면 대부분의 경고 표시가 없어진다. 그래도 남아있는 부분은 C++ Code Analysis 설정을 수정해서 제거하도록 한다. 아래 그림과 같이 Properties -> C/C++ General -> Code Analysis 에서 Syntax and Sematic Errors 항목의 체크를 없애준다.



  C++ 소스 상의 경고 메시지들이 모두 사라진 것을 확인할 수 있다. 이제 이클립스에서도 C++ 소스 파일들을 자유롭게 편집하고 빌드할 수 있게 됐다. 끝.



참고사이트:

http://cocos2d-x.org/

http://www.raywenderlich.com/11283/cocos2d-x-for-ios-and-android-getting-started 

저작자 표시
신고
Creative Commons License
Posted by 가리봉맨

  Cocos2d-x 안드로이드 빌드를 하기 위해서는 두 가지 과정을 거쳐야 한다. 먼저 콘솔에서 c++ 파일들을 빌드하고 그 다음 이클립스에서 JAVA 파일들을 빌드해야 한다. 그런데 이클립스에 플러그인 하나만 설치하면 두 가지 과정을 이클립스에서 한 번에 처리할 수 있다. 또, 이클립스에서 직접 c++ 파일을 편집할 수도 있다.


  그 플러그인이 뭐냐하면 바로 CDT(C/C++ Development Tools) 이다. 해당 플러그인을 설치하기 위해 이클립스 메뉴에서 Help -> Install New Software 를 선택한다. 그리고 work with: 란 옆의 콤보 박스에서 "Indigo - http://download.eclipse.org/releases/indigo" 를 선택한다. 이클립스 버젼이 Indigo가 아니라면 해당 버젼에 맞게 선택해 주면 된다.


  다음으로 programming Languages 카테고리를 선택한 뒤, C/C++ Development Tools 에 체크해 준다. 그리고 Next를 누르고 안내에 따라 설치를 하면 된다.


  

  이제 기존 프로젝트에 C/C++ 프로젝트를 결합하는 일이 남아 있다. 해당 프로젝트를 선택한 뒤, 이클립스 메뉴의 File -> New -> Other에서 C/C++\Convert to a C/C++ Project(Adds C/C++ Nature) 를 선택한다.




  Next 버튼을 누르면 아래와 같은 창이 뜬다. Candidates for conversion: 에서 해당 프로젝트를 선택한 뒤, Project  type:은 "Makefile project"를 선택하고 Toolchains:는 기본 값인 -- Other Toolchain -- 를 선택해 준다.



  Finish 버튼을 누르면 창이 하나 더 뜬다. 이클립스에서 퍼스펙티브(Perspective)란 작업의 종류에 따라 뷰와 에디터가 배치된 세트를 의미한다. 기본적인 안드로이드 관련 셋팅만 해 놓은 상태라면 이클립스 우상단에 Debug, DDMS, Java 퍼스펙티브가 있을 것이다. 여기에 C/C++ 퍼스펙티브를 추가할 것이지 여부를 뭍는 것이다. 일단 No를 선택한다.




  이제 C++ 파일 컴파일을 위한 리눅스 make 명령 실행에 대한 프로젝트 설정을 변경해 줘야 한다.  Package Explorer에서 프로젝트를 선택한 뒤 마우스 오른쪽 버튼을 누르고 제일 아래에 있는 Properties를 선택한 뒤, C/C++ Build 메뉴를 선택한다. 


  다음으로 "Use default build command" 체크박스를 해제한 뒤 Build command: 란을 아래와 같이 채워 준다. "samplecocos2dxandroid" 부분은 각자의 프로젝트명에 맞게 변경해 주면 된다. 이렇게 하면 전에는 콘솔에서 직접 입력하던 build_native.sh 스크립트를 이클립스가 실행해 주게 된다. 참고로 끝에 붙은 'V=1" 옵션은 빌드 명령이 콘솔 화면에 표시되도록 해 주는 역할을 한다.


 bash ${workspace_loc:/samplecocos2dxandroid}/build_native.sh NDK_DEBUG=1 V=1 


  마지막으로 NDK가 설치된 경로를 이클립스에 알려주는 작엄을 해야 한다. 다시 Properties 창을 열고 C/C++ Build 를 더블 클릭해서 하위 메뉴를 펼쳐준다. 여기서 Enviornment를 선택한다. 그리고 Add 버튼을 누르고 NDK_ROOT란 키 값과 다음과 같이 NDK가 설치된 경로를 넣어 준다. 


 /Users/NokNokMobile/Documents/_dev/android-ndk-r7-crystax-5.beta2 




  여기까지 하고 이클립스 메뉴에서 Project -> Build All 을 하면 이클립스 Console 창에 빌드 과정이 찍히면서 C++ 파일들이 정상적으로 빌드되는 것을 확인할 수 있다. 



  하지만 아직 완전히 끝난 것이 아니다. 빌드는 되지만 C++ 파일들에 몇 가지 warnings이 남아 있다. 이 부분에 대한 처리는 다음 편에 계속 하도록 하겠다.



참고 사이트:

http://cocos2d-x.org/

http://www.raywenderlich.com/11283/cocos2d-x-for-ios-and-android-getting-started 

http://stackoverflow.com/questions/12594854/cocos2dx-specific-libraries-cannot-be-resolved-after-creating-android-project-fr

http://okjsp.tistory.com/1165643087

저작자 표시
신고
Creative Commons License
Posted by 가리봉맨


티스토리 툴바