Linux下安装并使用Java开发opencv的配置
inux编译安装opencv
首先, linux下安装opencv其实不麻烦的, 参考文档即可完成: http://docs.opencv.org/trunk/doc/tutorials/introduction/linux_install/linux_install.html
大致有以下几个步骤:
1) 安装gcc以及cmake等等乱七八糟的软件(不过ubuntu下默认差不多都有了吧…)
sudo apt-get install build-essential python-dev cmake
2) 下载opencv-2.4.8.zip并解压缩
3) 新建一个build文件夹
cd ~/opencv mkdir build cd build
4) 在终端里输入:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. make sudo make install
make命令会花费几十分钟时间… 然后理论上就结束了… 如果不用java开发的话 就OK了 比如 可以运行sample文件夹下的python代码…
但是, 如果要使用java开发的话 需要接着这样做…..
安装opencv-java
这一步非常DT, 因为官网上还有一个文档, 专门讲怎么用java开发的…http://docs.opencv.org/doc/tutorials/introduction/desktop_java/java_dev_intro.html
1) 首先, 需要安装ant:
sudo apt-get install ant
2) 其次 需要运行cmake, 关键是cmake的参数, 官网给的是这样的:
export JAVA_HOME=/usr/lib/jvm/java-6-oracle#这句不加应该也可以的 cmake -DBUILD_SHARED_LIBS=OFF ..
注意看输出的, 如果”To be built”里面有java这一项的话, 就应该是OK的…. 接下来只要make -j8 就可以了…
最坑爹的地方来了, 以这样的参数运行cmake以后, 运行make -j8总是不成功, 说有错误…..
查了半天, 发现这是一个BUG: http://code.opencv.org/issues/2859
那么试一试加上参数: -DBUILD_TESTS=OFF 吧…
所以cmake的参数要这样写才可以:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -DBUILD_TESTS=OFF ..
3) 用上面那样的参数运行cmake以后, 再:
make -j8 sudo make install
这样就可以成功make了…
如何判断是否安装成功?
以上操作结束后, 看看build文件夹, bin目录下是不是有一个opencv-248.jar文件:
如果有的话 就说明成功安装了opencv的java组件…
!!注意!! 不能用windows下opencv安装目录下的那个opencv-248.jar!! 刚才生成那个jar和windows下的jar不一样的!! (我查了MD5码… 其实看文件大小也能看出来!!)
Eclipse下的配置
这里有一篇非常好的帖子, 写的非常到位, 我就不重复了, 链接:
http://exintopro.net/blog/2013/10/02/setting-up-eclipse-for-using-opencv-java-in-ubuntu/
这个帖子虽然很好, 但是没有介绍编译的那一部分, 由于安装java组件时的编译过程和官网给的不一样, 所以才导致我废了半天的时间啊!……
来源:51CTO
相关文章
- 如何快速在本地Linux虚拟机搭建一个Redis集群
- 【linux开发】Linux下配置java环境 安装eclipse
- 查看linux中的TCP连接数
- linux nohup后台执行脚本并指定文件输出 ,nohup 修改默认日志输出文件
- linux清理Java环境
- Linux的基本学习(七)——BASH
- linux部署java命令
- java tomcat linux 环境变量设置
- Linux下双网卡绑定(bonding技术)
- Linux 清楚历史history命令的一个简单方法
- [Tomcat/Java EE/Linux]Tomcat启动异常:StandardServer.await: create[localhost:8005]: java.net.BindException: 无法指定被请求的地址
- [Linux/Java SE]查看JAR包内的类 | JAR 命令 | 反编译
- Linux操作系统PS命令详细解析
- java 调用 linux 命令行 +使用管道、awk等命令进行数据处理的方法
- Linux中LVM2原理
- Linux 之 crontab 使用
- Linux命令·mv
- 比较war包在Linux或windows服务器上启动及使用 java -jar xxx.jar 或nohup java -jar xxx.jar启动在Linux服务器上的spring boot jar
- 如何在Rocky Linux和AlmaLinux上安装MySQL 8.0
- [java][kettle]在Linux上面kettle-spoon启动问题
- java工具类,在Windows,Linux系统获取电脑的MAC地址、本地IP、电脑名
- linux 访问tomcat 管理页面时 You are not authorized to view this page 403(真实可用)
- ubuntu下编译ffmpeg+x264库(android和Linux)(三)
- Ubuntu Linux下通过代理(proxy)使用git上github.com
- Java开发必会的Linux命令
- 如何配置sigar在Linux和Windows下使用java语言获得各种系统信息
- 【环境配置】Linux环境下下载、配置java环境、安装eclipse、建立eclipse快捷方式详解
- Java JDK11 在Ubuntu, Linux Mint,Debian上安装方法(PPA源)
- Java jdk11 在Linux上的安装和配置
- linux删除所有文件,但是排除某个文件
- linux系统为文件添加执行权限
- Linux下高并发socket最大连接数所受的各种限制
- 嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十七)多线程编程
- 手把手学嵌入式——Linux Shell手册
- Linux下如何配置普通用户的sudo命令权限?
- Linux C/C++ 单实例进程设计
- Ora-27102: Out Of Memory: Linux Error: 12: Cannot Allocate Memory with LOCK_SGA=TRUE[ID 401077.1]