[英]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.