linux下安装opencv及相关问题解决方案
Linux下安装opencv会遇到一下问题,本文详细记录
·
opencv下载
下载链接:https://opencv.org/releases/
linux环境下只能选择源文件下载,自己编译
opencv编译
解压压缩文件,进入文件夹
执行以下命令:
sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
mkdir my_build_dir
cd my_build_dir
#时间较久
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
sudo make
sudo make install
以上就是编译过程,应该问题不大
opencv环境配置
步骤1:
sudo gedit /etc/ld.so.conf.d/opencv.conf
文件末尾加入:
/usr/local/lib
步骤2:
sudo ldconfig
这步容易报错
错误1
类似如下:
sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 不是符号连接
sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 不是符号连接
解决方法如下:
sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1
sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1
错误2
类似如下(可能只出现在wsl环境下):
原因:
1、/usr/lib/wsl/lib/目录下都是文件而不是链接
2、该目录只读
因此只能将在其他目录操作,具体步骤如下:
cd /usr/lib/wsl
sudo mkdir lib2
sudo ln -s lib/* lib2
sudo vim /etc/ld.so.conf.d/ld.wsl.conf
# 将/usr/lib/wsl/lib 改为 /usr/lib/wsl/lib2
步骤3:
sudo gedit /etc/bash.bashrc
在这个文件的末尾,加入:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
opencv环境检验
执行如下命令:
pkg-config opencv --modversion
这时候可能会报错,如下:
原因是缺少opencv.pc这个配置信息文件
解决方法如下:
cd /usr/local/lib
sudo mkdir pkgconfig
cd pkgconfig
sudo touch opencv.pc
sudo vim opencv.pc
然后在opencv.pc中添加以下信息,需要与自己安装opencv时的库路径对应:
prefix=/usr/local
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib
Name: opencv
Description: The opencv library
Version:4.5.5
Cflags: -I${includedir}/opencv4
Libs: -L${libdir} -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
version是你的opencv版本
再检验
更多推荐
已为社区贡献1条内容
所有评论(0)