在JNI中使用Android自带的Log日志功能,在编译时提示如下异常:
kaizen@tuan800-inc:~/workspace_eclipse_1/im_pulltorefresh/MyJNITest$ ndk-build
[armeabi] SharedLibrary : libuninstalled_observer.so
/home/kaizen/developer/android-ndk-r10b/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: ./obj/local/armeabi/objs/uninstalled_observer/main_activity_UninstalledObserverActivity.o: in function Java_main_activity_UninstalledObserverActivity_init:jni/main_activity_UninstalledObserverActivity.c:30: error: undefined reference to '__android_log_write'
/home/kaizen/developer/android-ndk-r10b/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: ./obj/local/armeabi/objs/uninstalled_observer/main_activity_UninstalledObserverActivity.o: in function Java_main_activity_UninstalledObserverActivity_init:jni/main_activity_

文章主要讲述了在C/C++开发中遇到使用Android Log时导致的编译失败问题,通过分析错误日志发现是缺失__android_log_write函数。解决方案是在Android.mk文件中添加相应代码,经修改后成功编译生成so库。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



