首先,我在PC的linux下运行的这个程序,可以正常运行
然后用qt中arm对应的开发套件去编译,没有任何报错
我也将用cmake生成的.so文件导到了arm上的/lib文件夹中
在arm中运行时,没有反应,直接跳到下一条命令行
如图
需要说明的是之前没有调用opencv库的时候,PC和ARM上均能正常运行QT程序
下面附上主要代码:
1.main.cpp
#include "widget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
return a.exec();
}
2.widget.cpp
#include "widget.h"
#include "ui_widget.h"
#include <QLabel>
#include <QPixmap>
#include "opencv2/opencv.hpp"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
IplImage *img = cvLoadImage("cat.jpg");
QLabel *label = new QLabel();
QImage *image;
cvCvtColor(img,img,CV_BGR2RGB);
uchar *imgData=(uchar *)img->imageData;
image=new QImage(imgData,img->width,img->height,QImage::Format_RGB888);
QPixmap pixmap = QPixmap::fromImage(image->scaled(size()));
label->setPixmap(pixmap);
label->show();
}
Widget::~Widget()
{
delete ui;
}