Home » Android » ZBAR android ARM 64 couldn't find "libiconv.so"

ZBAR android ARM 64 couldn't find "libiconv.so"

Posted by: admin June 15, 2020 Leave a comment


On samsung galaxy s6 edge my app crashes when calling the zbar sdk, for scanning. I think it is because I don’t have an arm64 version of zbar.

This is the end of the crash log:

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/.../base.apk"],nativeLibraryDirectories=[/data/app/.../lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "libiconv.so"
at java.lang.Runtime.loadLibrary(Runtime.java:366)

I seen in my project that i don’t have arm64 jni libs for zbar
is this related ?
and if so where can i get
for arm64 ?

How to&Answers:

So finally found the zbar 64 bit from here:


it is found under arm64-v8a. All i had to do is rename the so file to match my project.


I downloaded iconv.so and libZBarDecoder.so in arm64-v8a.

  • Rename libZBarDecoder.so to libzbarjni.so
  • Zip file and rename it to iconv.jar (because
    “System.loadLibrary(“iconv”) in my project”).

And finally it work. Thanks Noam Segev.



For libiconv

Grab the libiconv source, and make an Android.mk makefile. Look at this site (http://groups.google.com/group/android-ndk/browse_thread/thread/012d679319e4ea6e?pli=1) for a prewritten makefile for libiconv and Android. Once you have the Android.mk file you can build using the ndk-build script.

For libzbarjni