ubuntu编译opencv
- 环境准备
- 编译配置
- FFMPEG配置
- 编译生成
- QT相关配置
环境准备
1、本人Ubuntu18.0.4版本
2、本人已安装qt开发界面以及gc++编译环境
3、opencv源码,可以在github下载https://github.com/opencv/opencv/releases。本人window里面拷贝过来,上一章window编译opencv有说到,链接
4、安装cmake-gui。本人新书直接命令安装 sudo install cmake-gui。
编译配置
1、在终端命令输入:sudo cmake-gui。出现可视化界面,选择对应路径,第一个是源码路径,第二个是编译输出路径。然后点击【Configure】弹窗界面
.
2、点击【Finsh】i,等待一些配置加载。
一、找到CMAKE_BUILD_TYPE 在value输入RELEASE,其他保持不变(如果已经存在就不必修改)。
二、CMAKE_INSTALL_PREFIX显示了默认的安装目录,生成makefile文件最后执行 make install时就会安装到这个目录,可以根据个人需要修改。
FFMPEG配置
1、首先不配置这个opencv也能编译通过,至于能不能打开usb摄像头本人没有验证,本人是虚拟里跑的,所以没有usb摄像头,调网络rtsp视频时候一直失败,就觉得和window一样情况,就需要编译ffmpeg。
2、Ubuntu和window一样全都是no,但是红色对应的log内容不一样。
3、本人偷懒直接用命令安装ffmpeg;在终端sudo install ffmpeg。安装完如下图
但是cmake-gui里面重新点下【configure】按钮 ,ffmpeg还是no。然后一直百度找在此博客找到相关资料https://www.jianshu.com/p/f4ca1039eadf,就借鉴部分依赖安装;
执行: sudo apt-get install build-essential;
然后执行:sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
最后执行:# apt-get install libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
再回到camke-gui里面重新点下【configure】按钮,ffmpeg是yes。
编译生成
打开终端,输入命令:sudo cmake install 。慢慢等待,到100% 恭喜成功了。
编译完自动安装到配置的路径里面。本人 默认/usr/local .但生成在/usr/loacl/lib里面。
修改环境变量,不然qt调试还是找不到相关so文件。
环境变量:
sudo gedit /etc/ld.so.conf 打开配置文件 在后面添加 /usr/local/lib 然后点击保存
最后执行命令:sudo ldconfig 让环境变量生效。这样就完成了。
QT相关配置
qt的项目文件里面配置: