• Open Source Computer Vision Library

Mingw編譯最新版本的OpenCV代碼

Wikipedia,自由的百科全书

目錄

2012-10-22更新集成了OpenCV的CodeBlocks下載

如果你不想自己編譯庫,那麼這裡提供了一個集成編譯好的OpenCV的CodeBlocks,使用方法極度簡單
1.打開CodeBlocks
2.選擇Settings-Compiler and Debugger-linker settings-左下方的add
3.在彈出的視窗中,粘貼 下載的壓縮包根目錄下openCV-codeblock-add-dll.txt 裡面的內容
4.請確保使用的是我包內的MinGW,即Settings-Compiler and buggger-Toolchain excutables-Compiler's installation directory所指向的MinGW為下載包裡面自帶的MinGW(這點針對已經安裝過CodeBlocks的用戶所需要註意的
配置結束
百度網盤下載地址:
http://pan.baidu.com/share/link?shareid=87314&uk=3440383764

2012-10-15更新CMake MinGW Code::Blocks環境配置視頻教程

OpenCV在Codeblocks下的配置
優酷視頻地址:http://v.youku.com/v_show/id_XNDYxOTc5NDky.html
百度網盤共用: http://pan.baidu.com/share/link?shareid=83002&uk=3440383764

2011-03-16更新OpenCV2.x的編譯方法

OpenCV 2.x 版本的源代碼在MinGW下的編譯方法,請參考如下鏈接: OpenCV 2.1.0 + MinGW + Eclipse 特別要註意的是 videoinput.a 這個庫的更新。 另外,如果用CMake產生的makefile後,在opencv的build目錄下,通常是允許如下內容:

mingw32-make

上面的命令將編譯整個OpenCV庫 然後再運行

mingw32-make install

就會把相應的頭文件等內容安裝好。

下載最新版本的OpenCV源代碼

首先,請從 sourceforge 上面,下載 OpenCV的最新源代碼。有大概兩種方法。

通過SVN工具下載

下載源代碼的方法有很多,常用的是SVN工具或者CVS工具,如果採用SVN的工具,從以下地址把代碼check out出來。

OpenCV SVN

註意,以上的鏈接,你必須使用SVN的工具才可以下載代碼。

使用CMake工具生成項目文件

下載和安裝CMake的工作我就不講了,大家直接可以去CMake的網站下載最新的windows setup文件來安裝。CMake下載網頁

把剛纔下載的OpenCV的包解壓縮,比如放在 F:\opencv的目錄裡面,作為 CMake的輸入,另外創建一個目錄比如 F:\test1 作為CMake的輸出。

Image:CMakeGui.jpg

CMake會自動讓你選擇生成的項目是針對什麼的,在這裡我選擇 codeblocks mingw,如果你是使用 visual C++的,那你也可以選擇對於的版本。一切OK後,你就點擊 configure 按鈕, 然後再點擊 OK 按鈕。 這樣,在F:\test1 目錄下麵,就生成了所有的可用於codeblocks的項目文件了。

註意,上面的CMAKE_BUILD_TYPE 如果你填寫的是Debug ,那麼產生的是debug的opencv庫,如果你填寫的是Release或者空缺,則產生的是Release的OpenCV庫。

使用codeblocks編譯OpenCV的庫

打開codeblocks,然後選擇打開工程文件,你選擇 F:\test1\OpenCV.cbp 的項目文件。這樣子,codeblocks就把整個openCV的源代碼的項目全部打開了。請看下麵的示意圖:

Image:CBOpenCV.jpg

選擇codeblocks中的Build按鈕或者菜單。等待片刻,編譯就完成了。註意,編譯完成之後,在F:\test1的目錄下麵,會有一個lib目錄,裡面都是剛剛編譯生成的lib文件(mingw編譯生成的庫文件,都是****.a的格式的,和你在VC++下看到的***.lib文件是不一樣的)。

實例代碼

參考Codeblocks_MinGW_openCV#添加庫文件和頭文件關於添加庫文件和頭文件的內容,修改相應的庫文件和頭文件。 需要修改的地方是:

  • 頭文件的地址是: F:\opencv\include\opencv
  • 庫文件的地址是: F:\test1\lib
  • 添加的庫的名字,改成如下內容 -llibcxcore110.dll -llibcv110.dll -llibhighgui110.dll

註意,上面的 -lXXXXX的意思,是添加庫文件,比如第一個的意思,是添加名為 libcxcore110.dll.a 的庫文件。 另外,也可以在添加lib的左邊的列表框裡面,直接選取對應的 .a 文件,這兩個方法是一樣的。

編譯,鏈接,運行,又一次大功告成了!

參考文檔和鏈接

  1. 源碼編譯 linux編譯方法.
  2. TDM-MinGW一個集成的MinGW安裝包.
  3. SVN軟體的一個論壇討論
Views
個人工具