Home » Android » NDK / Middleware / HAL » Solved: java.lang.UnsatisfiedLinkError: no hello in java.library.path

Solved: java.lang.UnsatisfiedLinkError: no hello in java.library.path

When we were developing the JNI example as mentioned in our another post, “Java Native Interface ( JNI ) Example , Calling Native C functions from JAVA” we got an error “Exception in thread “main” java.lang.UnsatisfiedLinkError: no hello in java.library.path” as below,

Exception in thread "main" java.lang.UnsatisfiedLinkError: no hello in java.library.path
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
	at java.lang.Runtime.loadLibrary0(Runtime.java:871)
	at java.lang.System.loadLibrary(System.java:1124)
	at HelloWorld.<clinit>(HelloWorld.java:4)
	at Main.main(Main.java:4)

Solution :

This error can be solved by adding the PATH of the native shared library using LD_LIBRARY_PATH as,

$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD

execute this command from the directory where you are trying to execute the JNI example. i.e. the directory where you have created shared library OR you can replace $PWD with the complete path to directory with shared library.

Now we can check the LD_LIBRARY_PATH as,

$ echo $LD_LIBRARY_PATH
:/home/devlab/Desktop/jni

Now, if you execute the JNI application, you will not see the error.

pip is not recognized... FIXED! How...
pip is not recognized... FIXED! How To Properly Install Python Libraries

Leave a Comment