银河麒麟QT5.12.8+opencv4.6开发环境配置

  • Post author:
  • Post category:其他


银河麒麟QT5.12.8+opencv4.6开发环境配置



qt5.12安装



安装QT

在官网上下载QT linux版本,这里是qt5.12.8

链接:

link


执行以下命令

sudo 777 chmod qt-opensource-linux-x64-5.12.8.run
./qt-opensource-linux-x64-5.12.8.run

安装目录选择 /opt

不联网情况下可以不输入账目密码

一路next



配置环境变量

//打开bash.bashrc
vim /etc/bash.bashrc
//添加环境变量
export PATH="/opt/Qt5.12.8/Tools/QtCreator/bin:$PATH"
export PATH="/opt/Qt5.12.8/5.12.8/gcc_64:$PATH"
//更新环境变量
source /etc/bash.bashrc

此时QT安装完成



opencv4.6.0安装

下载opencv4.6.0 source文件

解压opencv4.6.0

//创建bulid文件夹
mkdir build
cd bulid
//编译
 cmake -D WITH_TBB=ON -D WITH_EIGEN=ON -D OPENCV_GENERATE_PKGCONFIG=ON  -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF  -D WITH_OPENCL=OFF -D WITH_CUDA=OFF -D BUILD_opencv_gpu=OFF -D BUILD_opencv_gpuarithm=OFF -D BUILD_opencv_gpubgsegm=O -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

//安装
make install
//输入以下命令查看安装后的版本号
opencv_version



配置环境变量

//打开opencv.conf
vim /etc/ld.so.conf.d/opencv.conf
//添加环境变量
/usr/local/lib

保存后输入

sudo ldconfig

打开/etc/bash.bashrc

vim /etc/bash.bashrc

在文件末尾添加

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
 
export PKG_CONFIG_PATH

保存

参考链接

opencv安装

配置完后测试

在sample/cpp目录中编译例程,如:

g++ -o edge edge.cpp `pkg-config --cflags --libs opencv4`

有些情况下编译报错,可能是需要c++以上版本,输入命令

g++ -std=c++11 -o edge edge.cpp `pkg-config --cflags --libs opencv4`

但是这种情况并不能一劳永逸解决,打开~/.bashrc

vim ~/.bashrc

在#some more ls aliases添加两个语句,90行左右

alias g++='g++ -std=c++11'
alias g++='g++ -std=c++14'

保存退出

在QT中更改QT版本,如图

在这里插入图片描述



测试

新建一个工程

在.pro文件中添加include和lib,路径以实际为准

INCLUDEPATH +=   /usr/local/include/opencv4 \

LIBS += -L/usr/local/lib -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_objdetect -lopencv_imgcodecs -lopencv_videoio

在main.cpp中输入以下代码

#include <QCoreApplication>
#include <QDebug>

#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/opencv.hpp>

using namespace cv;

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    //qDebug() << "hello opencv";

    Mat image;
    image = imread("/home/cring/1.jpg");

    imshow("image", image);

    waitKey(0);

    return a.exec();
}

运行结果如下

在这里插入图片描述



版权声明:本文为weixin_32050837原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。