Opencv在MFC靜態庫的配置

2021-06-22 09:53:50 字數 2004 閱讀 9422

(1)庫目錄需配置opencv的靜態庫

(2)設定mfc為靜態鏈結

下面是把opencv之類的庫設定成靜態庫

(3)最關鍵的一步是聯結器的輸入項設定:

nafxcw.lib //這個lib新增參考[5]

opencv_calib3d248.lib

opencv_contrib248.lib

opencv_core248.lib

opencv_features2d248.lib

opencv_flann248.lib

opencv_gpu248.lib

opencv_highgui248.lib

opencv_imgproc248.lib

opencv_legacy248.lib

opencv_ml248.lib

opencv_nonfree248.lib

opencv_objdetect248.lib

opencv_photo248.lib

opencv_stitching248.lib

opencv_ts248.lib

opencv_video248.lib

opencv_videostab248.lib

zlib.lib

ilmimf.lib

libjasper.lib

libjpeg.lib

libpng.lib

libtiff.lib 到libtiff也是opencv中staticlib資料夾下的lib,常常被人民所忽略。

vfw32.lib //這個lib新增參考[2,1]

comctl32.lib //參考[1]沒有這個lib會產生opencv_highgui248.lib: error lnk2001: unresolved external symbol -imp_create*******ex@52

最後說一下[7],這個靜態鏈結庫,只要把.h和.lib檔案加入工程資料夾即可。

而動態鏈結庫有兩種方法,一種是把.h、.lib和.dll檔案加入到工程中,這就是我們經常配置[6]opencv的方法,也就是雖然是動態鏈結也需要配置.lib庫的原因,.h檔案路徑是vc++ directories下include directories下配置的,dll檔案路徑是在vc++ directories下executable directories下配置的,或者更改環境變數path。還有一種方法是只單獨使用dll檔案,需要函式指標和win32 api函式裝載,詳情參考[7]。

參考:opencv unresolved external symbols - other libraries needed? 

opencv highgui靜態庫在windows下鏈結問題 

在靜態庫下使用mfc和共享dll下使用mfc 這兩種情況 opencv的配置,以及配置opencv配置中容易出現的問題 

opencv 在mfc中的使用有關問題  

nafxcw.lib與libcmt.lib在vs2008中鏈結衝突解決方案 

vc 2008 express下安裝opencv2.3.1 

c++中.dll與.lib檔案的生成與使用的詳解 

lib 靜態鏈結庫 

在靜態庫中使用MFC

在專案的配置屬性中配置 mfc的使用 時,選項的區別 如果選擇 在共享dll中使用mfc 的話,編譯後的程式中不包含mfc庫,所以檔案會比較小,但是如果程式直接移到乙個沒有安裝過mfc的機器上時,可能會導致找不到mfc的dll,如果選擇 靜態庫中使用mfc 那麼編譯後的程式就直接包含了呼叫mfc的部...

在MFC下執行OpenCV

原來一直都想在mfc下執行opencv,感覺這樣可以結合兩者的特點,一種霸氣的感覺。有木有。先都沒有勇氣去實現,今天花了三個小時,終於搞出來了。主要是opencv2.3不支援cvvimage,而自己感覺opencv論壇中沒有說很仔細,至少對我這個菜鳥是這樣的。下面是論壇的連線 在這裡說一點,其實就是...

呼叫OpenCV靜態庫

呼叫靜態庫的好處在於,發布軟體時不需要附帶dll,只需要乙個.exe,但是檔案的體積會比較大。呼叫方法 1 設定專案屬性的目錄,可執行目錄 opencv build x86 vc11 bin,包含目錄opencv build include,庫目錄opencv build x86 vc11 stat...