c++ - OpenCV 简单代码编译成功但在运行时崩溃

标签 c++ qt crash segmentation-fault opencv3.0

我的目标是在 Qt 5.5.1 中运行一个简单的 OpenCV 贡献(额外)模块。

步骤:

1) 创建一个 Qt 应用程序;

2) 将 main.cpp 文件更改为:

#include <QApplication>
#include <opencv2/core/utility.hpp>
#include <opencv2/tracking.hpp>
#include <opencv2/videoio.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>
#include <cstring>
#include <QDebug>

using namespace std;
using namespace cv;

int main(int argc, char*argv[])
{
    qDebug() <<"start!" << endl;

    QApplication a(argc, argv);

    string trackingAlg = "KCF";
    MultiTracker trackers(trackingAlg);

    qDebug() <<"success!" << endl;

    return a.exec();
}

这是我的 .pro 文件:

QT       += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = tracker4

CONFIG += c++11

TEMPLATE = app
SOURCES += main.cpp

INCLUDEPATH += /usr/local/include/opencv

LIBS += `pkg-config opencv --libs`
LIBS += -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui -lopencv_videoio -lopencv_tracking

程序编译成功,但在运行时,甚至没有运行 main() 函数就崩溃了。当我在 Code::Blocks 中运行它时,我没有收到这样的错误,但在 Qt 中我仍然遇到这个问题。

我使用的是 Qt 5.5.1 和 Ubuntu 14.04。

任何人都可以在他/她的机器上生成此“段错误”错误吗?

最佳答案

对于 QT 5,请在 QT=OFF 的情况下构建 OpenCV。 对于 QT 4,使用 QT=ON 构建 OpenCV。

关于c++ - OpenCV 简单代码编译成功但在运行时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36431194/

相关文章:

c++ - 如何在 Qt 中创建类似连续子表单(小部件)的 ms-access?

iphone - Nsstring对象更改其数据类型

c++ - extern 模板是否会阻止函数内联?

c++ - 某些 lua/c++ 代码中的 SIGSEGV 错误

c++ - 字符串、CString、QString 有什么区别?

c++ - bool 函数作为输入参数

qt - QML中qt listView的无限滚动

c++ - Qt:我怎样才能减少我的exe 'weight'

Android ListView 使应用程序崩溃

ios - 如何阅读此崩溃日志?