2016-11-30 3 views
0

.so 파일과 마찬가지로 Android.mk 파일에서 Mac OS X .dylib를 참조 할 수 있습니까?Android에서 OSX .dylib 사용 NDK

내 컴퓨터에 NDK와 함께 사용해야하는 C++ 프로젝트가 있습니다. 이 프로젝트는 2 개의 dylib를 사용합니다. 컴파일이 작동하지만 링크가 없습니다 ("[...]"메시지에 대한 정의되지 않은 참조가 있음).

답변

1

아니요, 아닙니다. .dylib에는 기본 Linux OS에서 이해할 수없는 바이너리 형식이 있습니다. .so 파일을 사용해야합니다. 라이브러리에 대한 소스 코드가 있다면 .so 파일을 컴파일하여 최소한의 변경 만하면됩니다. 아마도 심 층만큼 작을 것입니다.

+0

정말입니까? 이 프로젝트는 또한 OpenCV를 사용하고 있으며 .dylib 만 있고 .so 파일은 없습니다. –

+0

오픈 CV는 .so 또는 소스 코드로 쉽게 사용할 수 있습니다. 그것 없이는 컴파일 될 수 있습니다 (자바 부분은 자바 코드에 적절한 네이티브 함수가 있다는 것을 염려하지만). 라이브러리를로드하거나 C 함수를 찾을 수 없으므로 링크 나 런타임에서 실패합니다. –

+0

네가 맞다. 나는 가정용 양조장과 함께 OpenCV를 설치했으나 안드로이드 버전을 다운로드하여 .so 파일도 제공 할 수있는 .mk 파일을 얻을 수있다. –