ubuntu 下QT5.10.0与Opencv3.4.0环境搭建
一、Opencv安装
(1) 解压后
cd opencv-3.4.0
mkdir build
cd build
(2) 安装编译环境
sudo apt-get update
sudo apt-get install build-essential pkg-config cmake cmake-gui
(3) 安装 pip
sudo apt-get install python-pip
sudo apt-get install python3-pip
(4) 安装 numpy
pip install numpy scipy matplotlib scikit-image scikit-learn
pip3 install numpy scipy matplotlib scikit-image scikit-learn
(5) 安装依赖库
sudo apt-get install checkinstall yasm gfortran git ffmpeg libxvidcore4 libgtk-3-dev
sudo apt-get install libjpeg8-dev libtiff5-dev libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install libdc1394-22-dev libxine2-dev libv4l-dev libqt4-dev libgtk2.0-dev libtbb-devsudo apt-get install libatlas-base-dev libfaac-dev libmp3lame-dev libtheora-dev libvorbis-dev
sudo apt-get install libxvidcore-dev libopencore-amrnb-dev libopencore-amrwb-dev x264 v4l-utils
可选库
sudo apt-get install libprotobuf-dev protobuf-compiler libgoogle-glog-dev
sudo apt-get install libgflags-dev libgphoto2-dev libeigen3-dev libhdf5-dev doxygen
(6) 输入命令:cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. 然后输入命令 make 进行编译。
或者打开 cmake-gui 配置
a. 输入命令:cmake-gui
b. 修改项
CMAKE_BUILD_TYPE: RELEASE
WITH_OPENGL: 选上
WITH_CUDA: 不选
c. 按 Generate 生成配置文件后,输入命令开始编译: make -j8
注:若编译时想要用with cuda,需要注意gcc与g++版本问题,尽量较低的版本,我最后使用的时5.5
(7) 安装 opencv
make install
sudo sh -c 'echo "/usr/local/lib" >> /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
二、QT安装
1、下载QT安装包 百度云链接: https://pan.baidu.com/s/1Tc9PCcjp_4EM1gQS89e3pA 密码: yntw
2 、执行 chmod u+x qt-opensource-linux-x64-5.10.0.run
./qt-opensource-linux-x64-5.10.0.run
3、安装完成
三、测试
1、打开QT->创建工程
2 、在test.pro文件中写入:
QT += core
QT -= gui
TARGET = test
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
INCLUDEPATH += /usr/local/include \
/usr/local/include/opencv \
/usr/local/include/opencv2
LIBS += /usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_imgcodecs.so
SOURCES += main.cpp
3、测试代码main .cpp
#include <QCoreApplication>
#include <QCoreApplication>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
namedWindow( "src", WINDOW_AUTOSIZE );
Mat src1 = imread( "/home/sdxx/test/dog.jpg" );
imshow( "src", src1 );
return a.exec();
}
测试成功