Ubuntu18.04 + OpenCv 2.4.13安装(亲测有效,内含踩坑解决方案)
安装cmake-qt-gui
opencv编译时有一些选项要调整,安装这个可以界面调整,舒服一些
sudo apt-get install cmake-qt-gui
下载apt包
安装编译工具
sudo apt-get install build-essential
安装依赖包
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
安装可选包
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
下载OpenCV并修改一些文件
wget https://github.com/Itseez/opencv/archive/2.4.13.zip
解压并打开文件夹"opencv-2.4.13"
cd opencv-2.4.13
第一坑:改文件
打开 cmake/OpenCVPackaging.cmake
set(OPENCV_VCSVERSION "2.4.13")
Place the line anywhere above the first use of OPENCV_VCSVERSION.
改好后这个样子:
第二个坑:还是改文件
打开cmake/ OpenCVDetectCXXCompiler.cmake
u have to change “dumpversion” to “dumpfullversion”
explanation is that in gcc with higher version, dumpversion function can’t get true full version number of compiler so that cmake progress will fail.
改完这个样子:
编译
cd opencv-2.4.13
mkdir build
cd build
cmake-gui ..
gui直接关闭FFMPEG 和CUDA
make -j20 //开启线程 按照自己的配置
sudo make install
点Configure,然后Generate
配置环境
将opencv的库加入到路径,从而让系统可以找到
sudo gedit /etc/ld.so.conf.d/opencv.conf
末尾加入/usr/local/lib,保存退出
sudo ldconfig 使配置生效
sudo gedit /etc/bash.bashrc
末尾加入
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存退出
sudo source /etc/bash.bashrc #使配置生效
(该步骤可能会报错找不到命令,原因是source为root命令
su(进入root权限)
输入密码
source /etc/bash.bashrc
Ctrl+d(推迟root)
sudo updatedb #更新database
测试Demo
Lena图片可以右键另存为
touch Dis.cpp
vim Dis.cpp
//文件名字Dis.cpp
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int main( )
{
Mat image;
image = imread("./lena.jpg", 1 );//目录按照自己的目录
if ( !image.data )
{
printf("No image data \n");
return -1;
}
namedWindow("Display Image", WINDOW_AUTOSIZE );
imshow("Display Image", image);
waitKey(0);
return 0;
}
g++ Dis.cpp -o Dis.o `pkg-config --cflags --libs opencv`
参考文章
ubuntu16.04 + OpenCv 2.4.13安装:
https://blog.csdn.net/zbzb1000/article/details/81431685
OpenCV2.4.13+Ubuntu18.04 配置:
https://www.jianshu.com/p/fa8400c991da
OpenCV CMake package version error:
https://codeyarns.com/tech/2017-12-23-opencv-cmake-package-version-error.html
Make Error at cmake/OpenCVDetectCXXCompiler.cmake:
https://answers.opencv.org/question/65548/cmake-error-at-cmakeopencvdetectcxxcompilercmake/