안드로이드에서 NDK를 이용하여 so파일을 생성하려고 합니다.
제가 택한 방법은 안드로이드 프로젝트에 jni폴더를 만들고...
원하는 c파일 및 h파일을 제작한, 후 Convert to a c/c++를 통하여 안드로이드 프로젝트에서...
so 파일을 생성할 수 있도록 하려고 하는 것이지요.
Convert to a c/c++할 때 makefile project로 하였구요.
그런데, res 폴더에 빈 makefile을 생성하였는데...
makefile 정보를 어떻게 해야하는 것인지 잘 모르겠더군요.
/*
ANDROID_NDK_BASE = /cygdrive/judy10/android-ndk-r5c
LIBNAME = libsax.so
SOURCES = $(wildcard jni/*.cpp)
*/
위와 같이 makefile을 작성하였으나, 오류라고 빨간 표시가 붙는군요.
이런 경우에 makefile을 어떻게 작성해야 하는지에 대한 책이나 자료를 아시는 분은 꼭 좀 알려주시면 감사하겠습니다.
참고로 제 프로젝트 상황에 대한 이미지를 첩부로 같이 올립니다.
제가 아는게 짧아서 질문이 정확히 이해는 안갑니다만...
NDK 빌드에는 크게 두가지 방법이 있습니다.
첫번째는 android ndk 빌드 시스템을 이용하는 것인데,
"Android.mk" 파일에 빌드 스크립트를 적고, "ndk-build" 명령을 사용해서 빌드합니다.
안드로이드 ndk의 docs 폴더 밑에 있는 "NDK-BUILD.html", "ANDROID-MK.html" 등의 document 들을 보시면 잘 설명되어 있구요...
두번째는 일반적인 gcc make 처럼 Makefile을 작성해서 컴파일 하는 방법인데
docs/STANDALONE-TOOLCHAIN.html 파일에 자세히 나와있습니다.
(아직 동작이 완전하지 않은 것으로 알고 있습니다. ndk-build 사용을 권장합니다.)
혹시 글쓰신 분이 android-ndk를 써보신 적이 없으시면
docs 폴더에 있는 document들을 OVERVIEW.html 부터 시작해서 찬찬히 읽어보시는게 좋겠군요~ ^^




인사이드 안드로이드 (안드로이드 프레임워크 동작 원리 분석) 추천 합니다.
이 책에 설명 잘 나와있어요.