centos7编译安装opencv4.5.3

一.背景

       由于java项目在部分功能实现过程中使用了opencv库,现需要将window开发环境上的程序打包到linux生产环境上部署,服务器需要事先编译安装opencv,生成共享库(opencv-java4.5.3.so)及jar文件,以实现部署在linux下的java程序调用opencv。

二.依赖关系

        本人在opencv编译过程中使用的opencv以及依赖库依赖关系如下,其中版本可根据需要自行调整,可能部分依赖库在本次编译之前已经安装,该部分未在下列图中体现:

centos7编译安装opencv4.5.3_第1张图片

三.依赖安装

1.cmake-3.21.2

(1)cmake压缩文件下载

https://cmake.org/download/

centos7编译安装opencv4.5.3_第2张图片

(2)文件解压

tar -zxvf cmake-3.21.2.tar.gz
cd cmake-3.21.2

(3)环境检查及配置

./bootstrap

centos7编译安装opencv4.5.3_第3张图片
此过程中遇到如下错误:

CMake Error at Utilities/cmcurl/CMakeLists.txt:525 (message):
  Could not find OpenSSL.  Install an OpenSSL development package or
  configure CMake with -DCMAKE_USE_OPENSSL=OFF to build without OpenSSL.

解决:安装openssl

yum install openssl openssl-devel

(4)编译

gmake

(5)安装

sudo make install

(6)查看版本

cmake -version

 2.jdk

jdk安装配置参考以下文章:

https://mp.csdn.net/mp_blog/creation/editor/119775594

3.ant

(1)压缩文件下载

https://ant.apache.org/bindownload.cgi

centos7编译安装opencv4.5.3_第4张图片

(2)解压

tar -zxvf apache-ant-1.9.16-bin.tar.gz

(3)配置环境变量

编辑profile配置文件

sudo vim /etc/profile

在文件末尾增加以下配置:

export ANT_HOME=/usr/apache-ant-1.9.2
export PATH=$PATH:$ANT_HOME/bin

配置立即生效:

source /etc/profile

(4)查看版本

ant -version

四.编译安装opencv

1.解压opencv压缩包并进入解压目录

tar -zxvf opencv-4.5.3.tar.gz
cd opencv-4.5.3

2.在解压目录下新建文件夹build并进入

mkdir build
cd build

2.进入build,执行以下命令:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv4.5.3 ..

 参数说明:

CMAKE_BUILD_TYPE:This statically specifies what build type (configuration) will be built in this build tree. Possible values are empty, DebugReleaseRelWithDebInfoMinSizeRel, ...

CMAKE_INSTALL_PREFIX:安装目录

 3.build目录下使用如下命令编译opencv

make -j4

其中j4参数是指定使用4个线程执行编译任务

4.build目录下使用如下命令安装opencv

sudo make install

至此,opencv4.5.3版本在cenos7下的编译安装已经完成,进入CMAKE_INSTALL_PREFIX参数指定的安装目录下,进入/share/java/opencv4,如果生成如下两个文件,则编译安装成功:

生成的.so文件在java中与window下的dll文件加载方法相同

生成的jar文件与windows下生成的jar文件是一样的

你可能感兴趣的:(linux软件部署,学习总结,linux,opencv)