2013-04-30 53 views
3

我試圖安裝OpenCV,以爲我做......但是,這有錯誤:不能使用OpenCV的命名空間

#include <cv.h> 
#include <highgui.h> 

using namespace cv; 

int main(int argc, char** argv) 
{ 
} 

Error: Symbol 'cv' could not be resolved

但很顯然,這兩個包括包括就好了。代碼本身取自OpenCV.org上的示例,因此我假設代碼是正確的。而我也無法診斷出什麼問題,只能隱約知道命名空間是什麼......

+0

你有沒有鏈接圖書館?你真的把它複製到eclipse的include目錄中嗎?還有其他錯誤嗎?你在使用什麼操作系統?有關[參考](http://docs.opencv.org/modules/core/doc/intro.html)。 – 2013-04-30 12:26:03

回答

7

您不包括C++頭文件,而是C頭文件。 您應該嘗試包含文件,例如highgui.hpp或全球opencv2.hpp

如果這些文件不存在,則必須升級該庫的更新版本。 如果它們存在但您的編譯器找不到它們,編譯時必須使用-I/path/to/include選項。

+0

+1:還包括opencv2.hpp – GPPK 2013-04-30 12:41:30

+0

你是對的。我編輯了答案。 – sansuiso 2013-04-30 13:17:09

0

您確定您使用的是C++編譯器而不是C編譯器?代碼可以很好地從命令行編譯,例如:

g++ -o opencv opencv.cpp -I/usr/include/opencv 

Johan。

+0

如果它是一個'C'編譯器,它會抱怨使用''和'namespace' ... – 2013-04-30 12:28:59

+0

是的,你是對的。 – PurpleAlien 2013-04-30 12:59:32

-1

我應該提到我是一個正在運行的Linux。問題是我沒有配置庫路徑。請參閱本指南中的「路徑配置」一節:http://opencv.willowgarage.com/wiki/InstallGuide_Linux

+0

該鏈接已死亡。你到底需要做什麼來設置「路徑配置」? – 2014-01-13 05:16:10

+0

你做了什麼來解決它?該鏈接已經死亡。 – 2016-02-09 21:57:25

+0

請修復鏈接或改進您的答案。 – 2018-01-02 16:39:42

0

您應該在GCC C++編譯器的第一個空格/ usr/local/include中包含這些空格。看下面的圖片。 enter image description here