1. `patchgenerator' in namespace `cv' does not name a type. 或者 error c2039: 「patchgenerator」: 不是「cv」的成員
解決:#include
2. error: extra qualification 『tld::』 on member 『processframe』
錯誤的原因是: 在類的定義中寫了void tld::processframe(); 在類中應該寫 void processframe();才對. 都是很基本的錯誤.
3.gcc編譯呼叫了opencv庫函式的**: 生成庫,在庫介面函式中,不用__declspec(dllexport)修飾,這一點與vs不同
g++ `pkg-config --cflags --libs opencv` tld_utils.cpp extracktarget.cpp tld.cpp fernnclassifier.cpp lktracker.cpp tracker.cpp -fpic -shared -o libtld.so -i. -l.
4. c/c++中巨集判斷作業系統和編譯器:
c++:編寫跨平台程式的關鍵,c/c++中的內建巨集定義,分兩部分:
①作業系統判定:
windows: win32
linux: linux
solaris: __sun
②編譯器判定:
vc: _msc_ver
gcc/g++: __gnuc__
suncc: __sunpro_c和__sunpro_cc
採用gcc編譯opencv程式
那麼採用gcc g 手動編譯程式也是相當容易的。在系統安裝了opencv的情況下 opencv2.4,預設安裝,安裝在usr local lib usr local include 採用下面的命令編譯 g o test test.cpp i usr local include i usr local...
gcc編譯C檔案,生成呼叫靜態庫
檔案結構為 include blaswrap.h clapack.h f2c.h hello.h add h lib blas linux.a lapack linux.a libf2c.a src hello.c add c test.c其中 test.c 呼叫hello.c 和add.c add...
使用GCC和CMake編譯OpenCV
注意 此教程認為你已經成功的在你的工作平台上安裝了opencv。來看乙個簡單的程式例如displayimage.cpp如下 include include using namespace cv int main int argc,char argv mat image image imread ar...