안드로이드 개발 질문/답변
(글 수 45,052)
ndk 를 이용하여 opencv 샘플 예제를 빌드해 보려했는데요.
컴파일은 잘 되었는데 이클립스에서 import하고 실행하니깐 라이브러리를 실행할 수 없다는 에러가 납니다.
Android library projects cannot be launched. 라는 에러입니다.
어느 블로거를 보고 그대로 따라했기때문에 딱히 짚히는 게 없어 완전 짜증나는 상태입니다.
지금껏 제가 한거를 간단히 기술하자면..
1. 이클립스 Helios, android-sdk-r07, android-ndk-r4-crystax 설치하였구요..2.
2. cygwin : gcc, g++, make, swig, vim 설치하였고
3. cygwin의 home\내이름 에 ndk 깔고 bashrc 파일 설정하고 SVN으로 opencv 소스받았고
4. 먼저 opencv 빌드하고 cvcamera도 빌드하였습니다.
5. libandroid-opencv.so 파일을 libcvcamera.so 파일이 있는 폴더에 복사해주었고
6. 이클립스 열고 New project->existing project하여 sample\opencv 폴더 import했고요. sdk는 1.6
7. opencv 프로젝트에서 property에 Is Library 체크하였습니다.
8. 그리고 New project->existing project하여 sample\cvcamera import하고
9. Run하는 순간 저런 에러가 뜹니다.
library로 opencv가 제대로 잡혀있지 않은 거 같은데 뭔가 또 추가해야할 부분이 있나요?
프로젝트를 생성할 때
Unable to read C:\eclipse\android-sdk-windows\AndroidManifest.xml: java.io.FileNotFoundException: C:\eclipse\android-sdk-windows\AndroidManifest.xml (지정된 파일을 찾을 수 없습니다)
라고 뜨던데 이것땜에 그런건가요?
그리고 프로젝트에 에러표시(빨간 X표시)가 나서 들어가보니 엄청나게 에러가 많이 있던데
(예를 들면 존재하지 않는 함수가 선언되어 있다던가 하는..) 어떻게 고쳐줘야 하나요?
이번주 내내 이걸로 고생하네요.. 도와주세요 ;;
컴파일은 잘 되었는데 이클립스에서 import하고 실행하니깐 라이브러리를 실행할 수 없다는 에러가 납니다.
Android library projects cannot be launched. 라는 에러입니다.
어느 블로거를 보고 그대로 따라했기때문에 딱히 짚히는 게 없어 완전 짜증나는 상태입니다.
지금껏 제가 한거를 간단히 기술하자면..
1. 이클립스 Helios, android-sdk-r07, android-ndk-r4-crystax 설치하였구요..2.
2. cygwin : gcc, g++, make, swig, vim 설치하였고
3. cygwin의 home\내이름 에 ndk 깔고 bashrc 파일 설정하고 SVN으로 opencv 소스받았고
4. 먼저 opencv 빌드하고 cvcamera도 빌드하였습니다.
5. libandroid-opencv.so 파일을 libcvcamera.so 파일이 있는 폴더에 복사해주었고
6. 이클립스 열고 New project->existing project하여 sample\opencv 폴더 import했고요. sdk는 1.6
7. opencv 프로젝트에서 property에 Is Library 체크하였습니다.
8. 그리고 New project->existing project하여 sample\cvcamera import하고
9. Run하는 순간 저런 에러가 뜹니다.
library로 opencv가 제대로 잡혀있지 않은 거 같은데 뭔가 또 추가해야할 부분이 있나요?
프로젝트를 생성할 때
Unable to read C:\eclipse\android-sdk-windows\AndroidManifest.xml: java.io.FileNotFoundException: C:\eclipse\android-sdk-windows\AndroidManifest.xml (지정된 파일을 찾을 수 없습니다)
라고 뜨던데 이것땜에 그런건가요?
그리고 프로젝트에 에러표시(빨간 X표시)가 나서 들어가보니 엄청나게 에러가 많이 있던데
(예를 들면 존재하지 않는 함수가 선언되어 있다던가 하는..) 어떻게 고쳐줘야 하나요?
이번주 내내 이걸로 고생하네요.. 도와주세요 ;;
2011.03.23 00:34:31
우선 안드로이드용 Opencv 빌드는 리눅스에서 하는 걸 권합니다.
그리고, opencv 공식 홈페이지의 인스톨 가이드 페이지에 android 용 빌드과정을 참고해서 인스톨하면 됩니다.
특히 예전 crystax 의 ndk r4 버전을 사용하는 대신 공식 ndk r4 또는 r5b 와 cmake 로 설치할 수 있습니다.
(http://opencv.willowgarage.com/wiki/AndroidExperimental 참고)
굳이 윈도우에서 cygwin 으로 컴파일하더라도 공식적인 빌드 방법은 CVCamera 디렉토리에서 다음 명령을 실행하면 됩니다.
sh project_create.sh # 내부적으로 SDK 에 있는 android update project ... 를 실행함
ant debug
ant install
또 굳이 이클립스에서 빌드하려면 할 수도 있는데 꽤 번거로울 거 같습니다.
새로운 프로젝트도 만들어야 되고, CVCamera 에 있는 libs, src, res 디렉토리를 가져오고,
또 opencv/android 디렉토리에 있는 libs, src 디렉토리도 가져와야 할 것 같네요.