赞
踩
近期因为项目需要需要使用opencv库,但是网上直接down的文件不能直接用。
报错:
java.lang.UnsatisfiedLinkError: /usr/lib/libopencv_java340.so: libopencv_core.so.3.4: 无法打开共享对象文件: 没有那个文件或目录
各种折腾终究不能解决,决定重新编译opencv库。
下载opencv包就不说了。
1、安装必备的插件
安装cmake、make。
安装 libgtk2.0-dev 和 pkg-config,,否则后期编译运行程序会出现类似如下的问题:
OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow, file /usr/local/opencv/OpenCV-2.0.0/src/highgui/window.cpp, line 100
terminate called after throwing an instance of 'cv::Exception'
通过网络获取安装:
# apt-get install libgtk2.0-dev # apt-get install pkg-config
2、为了方便使用,我还是决定使用gui版cmake。
#apt-get install cmake-py-gui
3、这个好配置多了
cmake主要用于进行一些配置设定,从而生成用于编译安装的makefile文件,通过界面进行参数的配置和设定,非常直观、方便。在配置中指定源码和编译目录以及生成方式。
按照下图的步骤进行配置:
点击Finish后cmake即载入默认配置,如下图所示:
如图所示,窗口的中间部分即配置列表,这里和使用cmake命令直接生成makefile文件一致的,如
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/home/OpenCV
只是这里通过图形界面的方式来进行配置,更加直观方便。
这里指对一个地方进行修改,CMAKE_BUILD_TYPE 值输入RELEASE,其他保持不变,图中蓝色虚线部分显示了默认的安装目录,生成makefile文件最后执行 make install时就会安装到这个目录,这里可以根据个人需求更改。在这里的配置中我勾选了WITH_QT 去掉了WITH_TIFF,其他更多的配置也不清楚,OpenCV中文网站也没找到系统的说明,这里暂时不深究,点击Generate生成配置文件。
进入OpenCV-x86目录可以查看Makefile文件,可以留意文件的生成时间是否和刚才的生成时间一致。
4、接下来在OpenCV-x86 分别执行make和make install即可完成编译安装。
5、编译完成后,libopencv_java340.so位置bulid的文件夹下lib目录中,将其拷贝到/usr/lib/目录下
opencv3.4.0.jar位于bin目录下,拷贝引用即可。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。