Javacv UnsatisfiedLinkError in windows 7
Solution 1
Check whether your Opencv version and JavaCv versions are matching each other. You can check that on the readme file on javacv-bin it specifically say about the required version of the opencv.
Solution 2
Unsatisfied link means that not all native code libraries required by jniopencv_core.dll could be found.
Did you deploy them all or just jniopencv_core.dll?
Solution 3
I faced this problem on Windows XP and Windows 7, and this is how I fixed it on both platforms, using Netbeans 7.2:
Install all required software:
-
FFmpeg (32-bit shared): Zeranoe FFmpeg offers win32 builds. Download and extract ffmpeg-20121020-git-04bf2e7-win32-shared.7z. Place its content at
C:\ffmpeg
.
Note: make sure C:\ffmpeg\bin
is a valid path.
-
OpenCV 2.4.2 (32-bit): download OpenCV-2.4.2.exe and extract it. Place its content at
C:\opencv
.
Note: make sure C:\opencv\build\x86\vc10\bin
is valid path.
JavaCV 0.2: download javacv-0.2-bin.zip and extract it. Move the extracted folder to
C:\javacv-bin
.Microsoft Visual C++ redistributable package (32-bit): download and install vcredist_x86.exe.
Configure the environment:
- Edit the environment variable PATH and append the following paths at the end:
C:\ffmpeg\bin;C:\opencv\build\x86\vc10\bin
Now you ready to create a new Netbeans project and test your application. But before you compile it,dDon't forget to right-click the Libraries folder at the pProjects window* and click Add Jar/FOLDER to select all the .jar files located at C:\javacv-bin
.
user1291468
Updated on June 04, 2022Comments
-
user1291468 almost 2 years
In my project I want to capture image from my webcam.
I configured step by step following the instructions from this "OpenCV-JavaCV : eclipse project configuration windows 7" blog post.
After configuration is finished, i tested samples codes and the application found my webcam
SETUP: Setting up device 0
SETUP: Namuga 1.3M Webcam
SETUP: Couldn't find preview pin using SmartTee
SETUP: Capture callback set
SETUP: Device is setup and ready to capture.
and then i got an error which is .dll error.
I use windows 7 x64.
Exception in thread "Thread-2" java.lang.UnsatisfiedLinkError: C:\Users\Administrator\AppData\Local\Temp\javacpp153028723186\jniopencv_core.dll: Can't find dependent libraries at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary1(Unknown Source) at java.lang.ClassLoader.loadLibrary0(Unknown Source) at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.load0(Unknown Source) at java.lang.System.load(Unknown Source) at com.googlecode.javacpp.Loader.loadLibrary(Loader.java:418) at com.googlecode.javacpp.Loader.load(Loader.java:368) at com.googlecode.javacpp.Loader.load(Loader.java:315) at com.googlecode.javacv.cpp.opencv_core.<clinit>(opencv_core.java:131) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at com.googlecode.javacpp.Loader.load(Loader.java:334) at com.googlecode.javacpp.Loader.load(Loader.java:315) at com.googlecode.javacv.cpp.opencv_core$CvArr.<clinit>(opencv_core.java:158) at com.googlecode.javacv.VideoInputFrameGrabber.grab(VideoInputFrameGrabber.java:158) at GrabberShow.run(GrabberShow.java:24) at java.lang.Thread.run(Unknown Source)
How can i solve this problem?