안드로이드(Android) NDK로 실행파일 만드는 법

우연한 기회에 s3c6410 보드와 관련된 현상에 대해 의견을 나누던 중, NDK로 JNI용 공유 라이브러리가 아니라, 실행 파일을 만드는 방법에 대한 질문을 받았습니다. 생각해 보니 문서에 나와있지 않기 때문에, 궁금해하실 분들이 더 있을 것 같아 기록해 둡니다.

 Android.mk 파일의 BUILD_SHARED_LIBRARY 를 BUILD_EXECUTABLE로 바꾸고, main() 함수를 제공하면 실행 파일이 생깁니다.

 NDK 문서에는 BUILD_SHARED_LIBRARY 와 BUILD_STATIC_LIBRARY 만 언급되어 있지만, 1.5와 1.6모두 BUILD_EXECUTABLE 변수 역시 지원하고 있습니다. BUILD_HOST_EXECUTABLE, BUILD_HOST_STATIC_LIBRARY 라는 변수도 정의는 되어있습니다만, 필요한 파일이 NDK에는 빠져있기 때문에 실제로 동작하지는 않습니다. 관련 포스트: