[英]Qt Creator + OpenCV: Program runs from .exe but not from editor
好吧,我需要开始使用OpenCV,因为我已经习惯了与QtCreator一起工作,我试图让它们一起工作。 我下载了最新的OpenCV版本,并用MinGW编译。 然后,我创建了这个小型控制台项目来试用它。 以下是.pro
文件:
QT += core
QT -= gui
TARGET = OpenCV_test4
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
INCLUDEPATH += C:\\Librerias\\opencv2.3.1\\release\\include
LIBS += -LC:\\Librerias\\opencv2.3.1\\release\\lib \
-lopencv_core231.dll \
-lopencv_highgui231.dll \
-lopencv_imgproc231.dll \
-lopencv_features2d231.dll \
-lopencv_calib3d231.dll
这是main.cpp
文件:
#include <QtCore/QCoreApplication>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// read an image
cv::Mat image= cv::imread("img.jpg");
// create image window named "My Image"
cv::namedWindow("OpenCV Window");
// show the image on window
cv::imshow("OpenCV Window", image);
// wait key for 5000 ms
cv::waitKey(5000);
return a.exec();
}
(我已尝试使用和不使用QCoreApplication
行的此代码)
这笔交易是:它链接和构建,当从QtCreator运行时,只出现一个名为C:\\QtSDK\\QtCreator\\bin\\qtcreator_process_stub.exe
的终端窗口, C:\\QtSDK\\QtCreator\\bin\\qtcreator_process_stub.exe
显示“按RETURN键关闭此窗口......”
但是,如果我从项目文件夹运行.exe,它运行完美! 为什么QtCreator无法启动该应用程序? 我觉得这很奇怪,我很感激任何暗示。 这真的不重要,但每次我改变一些东西以检查它是如何工作的时候,必须手动运行.exe是一种痛苦。
谢谢你的时间 :)
附加信息:
解决了,我真的不知道我做了什么,它突然工作并继续工作,我希望我能告诉你我是如何修理但我不知道,这样一个奇怪的事情:(
检查项目 - >运行设置 - >在终端中运行。 它必须启用,但似乎被禁用。
我在Linux下遇到了与QtCreator和OpenCL相同的问题。 简单的测试程序在从终端启动后工作,从QtCreator启动后不起作用。 我发现原因是在项目的运行环境设置中硬编码LD_LIBRARY_PATH。 我把它丢弃到空字符串,这已经解决了问题。
我在以下环境中遇到了同样的问题:Raspbian,Qt,openCV和gui应用程序。
old-ufo建议对我有用: - 首先,启用“Run in terminal”,失败 - 然后,禁用“Run in terminal”,这样我就能正确调试我的应用程序。
我明白这不科学。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.