2012년 8월 23일 목요일

[Android] Android NDK 빌드 환경 꾸미기

Android NDK Build 환경을 세팅할 일이 생겼다. 하나씩 하면서 진행해보자.

1. Android NDK 다운로드

 * http://developer.android.com/tools/sdk/ndk/index.html
 * 여기에서 Windows 용으로 다운로드 한다.
  - Revision 8b (July 2012) 버전이다.

 * 적당한 폴더를 지정하여 압축을 푼다.

 * 환경 변수 설정

  <Windows 경우>

   - ANDROID_NDK 라는 이름으로, 압축 푼 root 폴더를 지정해주자.

  <Linux 경우>

   - $HOME 경로에 보면 .bashrc 파일이 있다. 여기에 path를 설정해 주자.
    i. export PATH=${PATH}:/home/압축푼폴더/android-ndk-r8b
   - 입력 후 나와서, source .bashrc 라고 하면 적용된다.

2. Cygwin 다운로드(Windows만 해당)

 * http://cygwin.com/install.html
 * 여기에서 setup.exe 라고 되어 있는 link를 클릭하면, setup.exe 파일이 다운로드 된다.
 * 설치를 시작한 후, next 버튼을 눌러가며 진행한다.
 * 설치할 package를 묻는 창이 나오면, 아래 4개의 package를 선택하자.
  - Devel category
   i. devel/gcc-core
   i. devel/gcc-g++
   i. devel/make
  - editor category
   i. editor/gvim
   i. editor/vim 관련(2개 있음)
 * 설치를 마치는데까지 시간이 좀 걸린다.

3. 빌드를 해보자.

<Windows 경우>

 * 압축을 푼 NDK 폴더로 가서, ndk-build 를 실행해보자.
  - hello-jni 폴더로 들어가서, ndk-build 를 치면 잘 빌드되어, so파일도 잘 생긴다.
  - 1번에서 이미, ANDROID_NDK 라는 이름의 환경 변수를 만들어서, path에 등록을 해줬으니, 프로젝트 파일이 있는 곳(정확히는 /jni/Android.mk 파일이 있는 root 폴더)에서 ndk-build라고 하면 되는 것이다.
 * D:\~~~\hello-jni\libs\armeabi 폴더에 가면, libhello-jni.so 파일이 생성됨을 알 수 있다.

<Linux 경우>

 * 역시 마찬가지다. 1번에서 PATH를 설정해줬기 때문에, 실제 빌드할 폴더로 가서 ndk-build 만 입력하면 잘된다.
  - samples에 있는 hello-jni 폴더로 가서 하면 바로 libhello-jni.so 파일이 만들어짐을 알 수 있다.

4. 이클립스에서 hello-jni 프로젝트 생성해 보자.

 * 이클립스 화면

 * 설정 등을 해주고, application을 빌드하면 화면에 "Hello from JNI!" 라는 문구가 나오는 화면을 볼 수 있다.

5. Next 단계


 * Android NDK 예제를 만들어 보자.
  -  [Android] Android NDK를 이용한 예제 작성

6. 참고 사이트

 * android 공식 사이트 (NDK 다운로드 및 사용법)
  - http://developer.android.com/tools/sdk/ndk/index.html
 * cygwin 공식 사이트 ( install page)
  - http://cygwin.com/install.html
 * 기타 블로그
  - http://ninako21.tistory.com/487
  - http://mytv.pe.kr/tc/536
  - http://omen666.tistory.com/463
  - http://kottodat.com/xe/811 (Linux)

댓글 3개: