centos6.9下安装32位qt,并配置opencv3.2

1.去官网下载Qt5,linux版本—— qt-opensource-linux-x86-5.5.1.run

网址:http://download.qt.io/archive/qt/5.5/5.5.1/

 

2.安装必要的库:

#yum install mesa-libGL-devel mesa-libGLU-devel

#yum install freeglut-devel

下面安装c++库

# yum install gcc-c++

 

备注:此时会将gcc-c++和libstdc++-devel都安装上。

 

查看g++是否安装成功

# g++ -v

 

3.直接运行安装包

在运行安装包之前 首先给该安装包  可执行权限,不然会出错。

#chmod +x qt-opensource-linux-x86-5.5.1.run

然后直接运行即可:

#./qt-opensource-linux-x86-5.5.1.run

 

4.安装好之后,需要添加环境变量

#vim /etc/profile

在最后一行,添加以下内容:

export PATH="/opt/Qt5.5.1/5.5/gcc/bin:$PATH"
export PATH="/opt/Qt5.5.1/Tools/QtCreator/bin:$PATH"

 

5.添加桌面图标

centos6.9下安装32位qt,并配置opencv3.2_第1张图片

二,在QT项目上配置opencv连接库

1)新建Qt控制台项目,main.cpp编写如下:

#include 
#include 
#include 
#include 

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

    cv::Mat image;
    std::cout << "This image is" << image.rows << "x" << image.cols << std::endl;

    image = cv::imread("salted.bmp");
    if (image.empty())
    {
        std::cout << "The image dosn't exit!" << std::endl;
    }

    cv::namedWindow("Original Image");
    cv::imshow("Original Image", image);

    cv::Mat result;
    cv::flip(image, result, 1);

    cv::namedWindow("Output Image");
    cv::imshow("Output Image", result);

    cv::waitKey(0);

    cv::imwrite("output.bmp", result);

    return a.exec();
}

(2)修改pro文件

在pro文件里面,填写以下内容即可:

INCLUDEPATH += /usr/local/include \
               /usr/local/include/opencv \
               /usr/local/include/opencv2
 
LIBS += /usr/local/lib/libopencv*

运行还是会出错QtOpenCV: error while loading shared libraries: libopencv_core.so.3.2: cannot open shared object file: No such file or directory

##解决方法:

  • 1 打开路径:

    /etc/ld.so.conf.d

  • 2 创建文件:

    OpenCV.conf

    • 或者不创建文件:直接下载OpenCV.conf,将该文件放在第1步的路径下,然后直接进行第四步(注意:OpenCV.conf中的路径一定要是自己opencv的install路径,具体参看步骤3)
  • 3 在OpenCV.conf中写入:

    /usr/local/opencv320/lib

    注:该路径为opencv install之后的路径,一般默认的路径为/usr/local/lib,即lib*.so库文件所在的路径。

  • 4 在终端执行命令:

    sudo ldconfig

 

你可能感兴趣的:(C++,linux)