- 官网下载opencv3.4.1, 选择source版本。其他版本配置方法类似。
- 解压下载来的zip包
unzip opencv-3.4.1.zip - 进入解压后的文件夹
- 安装依赖库和cmake
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
cd my_build
- cmake
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
如果已经在新的文件夹中编译,但是还是出现错误,把cmakecache.txt删除重新编译。
cmake过程中需要下载一个文件“ippicv_2017_lnx_intel64_20170418.tgz",由于网络原因下载不成功,参考博文,下载该文件https://blog.csdn.net/u010739369/article/details/79966263。
7. sudo make
8. sudo make install
9. 至此,opencv编译结束,接下来配置opencv编译环境。首先将opencv的库添加到路径,从而可以让系统找到:
sudo gedit /etc/ld.so.conf.d/opencv.conf
在文件中添加 /usr/local/lib
执行命令使配置路径生效 sudo ldconfig
若出现:
sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 不是符号连接
/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 不是符号连接
出现这个错误可能是由于系统BUG所致
只需要分别输入上面图下部分的四行命令就可解决
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
配置bash:
sudo gedit /etc/bash.bashrc
在最末尾添加:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存,执行命令使配置生效:
source /etc/bash.bashrc
更新:
sudo updatedb
测试:
cd到opencv-3.4.1/samples/cpp/example_cmake目录下
我们可以看到这个目录里官方已经给出了一个cmake的example我们可以拿来测试下
按顺序执行
cmake .
make
./opencv_example
即可看到打开了摄像头,配置成功