呼叫靜態庫的好處在於,發布軟體時不需要附帶dll,只需要乙個.exe,但是檔案的體積會比較大。
呼叫方法:
1、設定專案屬性的目錄,可執行目錄:opencv\build\x86\vc11\bin,包含目錄opencv\build\include,庫目錄opencv\build\x86\vc11\staticlib,注:vc11是vs21012,v12是vs2013……
2、脫離vs執行時庫的辦法:c/c++ - **生成 - 執行庫 - 選擇mt或mtd,分別對應release和debug,這樣設定代表靜態編譯執行時庫。如果設為md,則會報錯:缺少msvcp110.dll
3、mfc中需要設定」在靜態庫中使用 mfc「
4、靜態編譯opencv庫,新增附加依賴項有兩種方法:
ilmimf.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
opencv_calib3d249.lib
opencv_contrib249.lib
opencv_core249.lib
opencv_features2d249.lib
opencv_flann249.lib
opencv_gpu249.lib
opencv_highgui249.lib
opencv_imgproc249.lib
opencv_legacy249.lib
opencv_ml249.lib
opencv_nonfree249.lib
opencv_objdetect249.lib
opencv_ocl249.lib
opencv_photo249.lib
opencv_stitching249.lib
opencv_superres249.lib
opencv_ts249.lib
opencv_video249.lib
opencv_videostab249.lib
zlib.lib
(這是2.4.9版本的,release下編譯)
b. **中引用
#pragma comment( lib,"庫名.lib" )
放在 標頭檔案 引用的下面
使用openCV的靜態庫編譯
by 少俠阿朱 摘要 本文主要講述如何使用opencv靜態庫進行編譯,生成脫離opencv環境可執行.exe檔案。實現的效果 此方法生成的exe檔案在其他沒有配置opencv環境的電腦上可直接執行。使用到的工具 opencv2.411 vs2013 debug模式下編譯流程如下 首先 專案的debu...
C呼叫C 動態庫,靜態庫
c呼叫c 動態庫,靜態庫 1 include 2 using namespace std 34 class paul 5 10 11 int paul add int a,int b 12 17 18 extern c 如果沒有則不行 19 25 1 include 2 extern void ca...
c 呼叫靜態庫和動態庫
呼叫靜態庫 第一步把動態庫放到檔案裡 第二部連線上靜態庫 pragma comment lib,靜態庫.lib 呼叫動態庫 第一步 typedef int getmaxnum int,int 定義乙個函式指標型別 第二部 載入 dll hmodule hmodule loadlibrary mydl...