记录虚拟机centos7安装opencv+ffmpeg,以及安装中问题解决

1、安装centos7

下载centos-7-isos-x86_64安装包下载_开源镜像站-阿里云 选择简化版,后续需要使用yum安装需要的库

注意事项:        

1.1 虚拟机安装系统到选择语言之后,选择按钮被遮挡了,可以使用tab健进行选择,enter之后查看好提示,确定是下一步在确定

1.2  虚拟机使用NAT模式联网,刚安装的纯净系统是没有ifconfig的,使用ip addr show查看网卡信息,然后修改网卡文件vi /etc/sysconfig/network-scripts/ifcfg-ensXXX,  只需要修改两项BOOTPROTO=dhcp, ONBOOT=yes,保存之后重置网络service network restart.  ping www.baidu.com检查是否可以正常联网,正常之后就可以使用xshell或者其他软件链接系统进行操作,使用方便

1.3 链接之后使用yum install报错,原因:yum源不对,重新安装新的yum源,使用curl下载新的yum源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

 版本根据系统版本选择,修改url中Centos-x.repo

2、安装cmake

1. 安装gcc等必备程序包

默认的 CentOS 软件源上包含一个名称为Development Tools的软件包组,这个组合包含了 GCC 编译器以及一系列库文件,还有其他编译软件需要用到的工具。运行代码如下:

sudo yum group install "Development Tools"

安装完成后使用命令检查:

gcc --version

2、安装wget 

yum install -y wget

3.  获取CMake源码包,解压

wget https://cmake.org/files/v3.12/cmake-3.12.1.tar.gz
tar -xvzf cmake-3.12.1.tar.gz
cd cmake-3.12.1/

版本可以根据自己需要修改 

4. 配置

./bootstrap

5. 编译

sudo make

6. 安装 

sudo make install

 安装完成,可阅读install_manifest.txt查看具体都安装了什么。

注意:如果步骤4报错,可能原因是关联的程序包未安装。解决方法:安装所需的程序包后,将cmake-2.8.10.2/目录下的CMakeCache.txt删掉,再从步骤4开始。

3、安装ffmpeg

ffmpeg必须在opencv之前安装,否者opencv编译时ffmpeg模块不会被编译,会导致后续视频流open失败

1. 使用yum安装epel-release:
sudo yum install epel-release -y
2.通过rpmfusion存储库安装 rpm :
sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
3.安装 FFmpeg: 
sudo yum install ffmpeg ffmpeg-devel -y
4.查看ffmpeg安装版本,并验证是否成功: 
ffmpeg -version

说明安装成功 

4、安装opencv

    下载OpenCV/opencv_contrib国内快速下载 - 绕云技术笔记绕云技术笔记,选择需要的版本

1、安装依赖
sudo yum -y install epel-release
sudo yum -y install gtk2-devel
sudo yum install -y libpng-devel
sudo yum install -y jasper-devel
sudo yum install -y openexr-devel
sudo yum install -y libwebp-devel
sudo yum -y install libjpeg-turbo-devel 
sudo yum -y install libtiff-devel 
sudo yum -y install tbb-devel eigen3-devel
sudo yum -y install boost boost-thread boost-devel
sudo yum -y install libv4l-devel
2、新建编译目录
mkdir build
cd build
3、配置cmake编译项
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE -D WITH_OPENEXR=0 -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D WITH_FFMPEG=ON ..
遇见的问题:

1、在公司服务器编译时遇到cmake编译出错,编译出错提示

"/usr/local/bin/c++"   is not able to compile a simple test program. 

 需要添加-D CMAKE_CXX_COMPILER=/usr/bin/c++指定编译器,重新编译之后正常,编译完之后确认下FFMPEG是否全部yes,如果不对的话可能是ffmpeg安装不正确,必须是yes,否则无法调用ffmpeg库,影响后续使用

2、cmake提示ippicv下载超时

解决办法:离线下载ippicv_2019_lnx_intel64_general_20180723.tgz,下载路径可以从报错打印中看到,或者网上找对应版本,然后将下载的文件替换到/opencv-4.9.0/.cache/ippicv下,将文件名改为xxxxxxxxxxxxxxxxxxxx-ippicv_2021.10.0_lnx_intel64_20230919_general.tgz,根据自己编译路径下该文件的文件名修改,将原来的文件删除

 4、make -j4 

使用make -j4可以使用多线程编译,速度快,但是有人说多线程可能会出错,建议使用make,我使用的没问题

5、make成功后 使用make install安装opencv

安装成功之后使用opencv_version查看,出版本说明安装成功

6、配置opencv库可执行路径

 添加库路径–执行:

sudo ln -s /usr/local/lib64/pkgconfig/opencv4.pc /usr/share/pkgconfig/
sudo ldconfig

添加环境变量:

sudo vi /etc/profile

最后面添加

export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=/usr/local/lib64:$LD_LIBRARY_PATH

运行source /etc/profile 使环境变量生效,可以使用echo $PKG_CONFIG_PATH查看环境变量值

接下来进行pkg-config配置,默认的pkg搜索链接路径/usr/lib/pkgconfig,需要将opencv.pc拷贝到pkg的默认路径下

sudo cp /usr/local/lib64/pkgconfig/opencv4.pc /usr/lib/pkgconfig
sudo ldconfig

测试 pkg-config --modversion opencv4 出版本说明安装成功

  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值