簡體   English   中英

使用mingw將靜態庫(.a)鏈接到exe

[英]Link static libs (.a) into exe with mingw

我目前正在嘗試使用OpenCV,但遇到了一些麻煩。.我在mingw中使用qt ide來編譯我的應用程序。

我的代碼如下所示:

#include “highgui.h”

int main( int argc, char** argv ) 
{
    IplImage* img1 = cvLoadImage( argv[1] );
    cvNamedWindow( “Example”, CV_WINDOW_AUTOSIZE );
    cvShowImage( “Example”, img1 );
    cvWaitKey(0);
    cvReleaseImage( &img1 );
    cvDestroyWindow( “Example” );
    return(0);
}

這是在我的.pro文件中:

INCLUDEPATH += "E:/OpenCV2MinGWBuild/install/include/"
INCLUDEPATH += "E:/OpenCV2MinGWBuild/install/include/opencv/"
INCLUDEPATH += "E:/OpenCV2MinGWBuild/install/include/opencv2/"
LIBS += -L"E:/OpenCV2MinGWBuild/install/lib/" -lopencv_calib3d231.dll -lopencv_contrib231.dll -lopencv_core231.dll

庫是.as(dll在lib的名稱部分,不是擴展名)。.我知道.a庫是linux特定的,但是mingw可以使用它們了嗎?

我用mingw構建了OpenCV庫,但無法使它們鏈接到我的Qt應用程序。.MinGW可以很好地看到頭文件,但看不到庫。 我總是收到“對cvShowImage'", "undefined reference to未定義引用cvShowImage'", "undefined reference tocvShowImage'", "undefined reference to ”(等)錯誤。

任何幫助表示贊賞! 謝謝!

dll.a不是靜態庫文件,它們是動態鏈接的.dll存根-您需要重建OpenCv才能使用靜態庫.lib並將這些鏈接直接與您的代碼鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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