본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[Android/안드로이드] Cygwin 을 통해 cpp로 작성된 JNI compile 시 나는 에러에 대한 대첵 ( make : *** 'obj/local/armeabi/objs/hellojni/HelloJNI.o'에서 필요로 하는 타겟 'jni/HelloJNI.c' 를 만들 규칙이 없습니다. 멈..

by 돼지왕 왕돼지 2012. 4. 4.
반응형



안녕하세요 돼지왕 왕돼지입니다.

Cygwin 을 통해서 cpp 로 작성된 JNI compile 시 계속 에러가 나더라구요.

어떤 에러냐?

make : *** 'obj/local/armeabi/objs/hellojni/HelloJNI.o'에서 필요로 하는 타겟 'jni/HelloJNI.c' 를 만들 규칙이 없습니다. 멈춤.'


요런 녀석이었습니다. 스샷으로도 함 볼까요?



암만 구글링을 해봐도 소용이 없었지만, Android Developer 의 NDK section 에서 제공하는 OVERVIEW 문서를 보고 해결책을 알아내버렸습니다.

사실 처음부터 cpp 로 작성하여 compile 을 하면 에러가 나지 않을 것으로 예상됩니다.
하지만, 원래 c 로 사용하던 것을 cpp 로 바구거나, cpp로 사용하던 것을 c로 바꾸는 경우에 문제가 생기는 것으로 추정됩니다.

여튼 이런 상황을 맞이했다면 ndk-build 를 줄 때 clean option 을 먼저 한번 줍니다.

ndk-build clean


이렇게 되면, 기존 생성된 binary 들을 다 제거해줍니다. 따라서 다시 compile 할때는 새로 compile 하는 것과 같은 효과가 나옵니다. 자, 다시 ndk-build 를 시도합니다.




깔끔하죠?? 도움이 되셨길 바라며~

 
도움이 되셨다면 손가락 꾸욱~




 
반응형

댓글