簡體   English   中英

Qt Creator + OpenCV:程序從.exe運行,但不從編輯器運行

[英]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是一種痛苦。

謝謝你的時間 :)

附加信息:

  • 我已經嘗試了調試和發布版本,兩個問題都是一樣的。
  • 調試不起作用,它永遠不會在任何斷點處停止。
  • 我在Windows 7 Proffesional x64上運行

解決了,我真的不知道我做了什么,它突然工作並繼續工作,我希望我能告訴你我是如何修理但我不知道,這樣一個奇怪的事情:(

檢查項目 - >運行設置 - >在終端中運行。 它必須啟用,但似乎被禁用。

我在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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM