2016-01-01 178 views
0

我和python一起使用OpenCV。但是有人有一個想法如何將OpenCV庫添加到C++編譯器(例如DevCpp或CodeBlocks ...)。在C++編譯器上安裝OpenCV

如果有一個編譯器可以更容易地安裝OpenCV庫沒有問題,我沒有限制保存編譯器。

我跟着網上的一些教師,但他們並不那麼清楚。

謝謝。

+0

Opencv是使用CMake構建的,它允許使用各種編譯器和IDE輕鬆進行編譯。如果您在應用程序中使用CMake,則添加opencv也非常簡單(從源代碼構建opencv後,CMakeLists.txt中的3或4行文本)。如果你不確定使用爲編譯器構建的二進制文件(在Visual Studio的情況下,不要混合使用Debug和Release,並確保不使用來自不同版本vc的二進制文件),而且你將不得不手動添加鏈接器命令(或依賴項)到您的項目或生成文件。 – drescherjm

回答

2

C++有兩個重要的編譯階段。首先,每個.cpp文件都是必需的。你需要庫頭文件(.h)。其次,單獨的部分鏈接在一起,你自己需要庫文件。 (.lib/.a取決於平臺)。

所以,你需要提供兩者的路徑。編譯器知道#include語句需要哪些確切的頭文件,但要鏈接的庫必須明確列出。

+0

haha​​ha儘管這是包含庫的自然方法,但我完全沒有想到它 – geniant

+0

謝謝MSalters, 最重要的說法是將OpenCV路徑添加到C++編譯器選項(Dev-Cpp)中。否則它將無法工作。 在我的情況下,路徑是: 「C:\ opencv \ build \ include」。 在這個文件夾中,有「opencv」和「opencv2」文件夾。所以我需要包含「openCV2」文件夾中的「openCV.hpp」。 這裏一個小的測試代碼: 的#include 的#include 「opencv2/opencv.hpp」 INT的main(){printf的( 「工作」);} – geniant

+0

以下測試程序僅覆蓋連接標頭的突未(確認編譯器知道.hpp文件的位置)。爲了確保OpenCV庫鏈接正確,請介意測試cvLoadImafe()之類的OpenCV函數。這是大多數嘗試首次配置使用OpenCV的鏈接器的人都會感到混亂的地方。 – Smallware