2017-05-03 102 views
1

我用opencv編譯最新的caffe-1.0時出現了一個bug。
我使用gcc-4.8.5在cuda8.0和cudnn5.1上編譯它在ubuntu14.04上。
我試過不同版本的opencv(2.4.8,2.4.13,3.2.0),但是錯誤在繼續。
的錯誤如下:編譯ubuntu14.04上的caffe-1.0時出現opencv錯誤

/usr/include/opencv2/core/core.hpp:4127:9: error: expected identifier before ‘float’ 
FLOAT=REAL, //!< synonym or REAL 
^ 
/usr/include/opencv2/core/core.hpp:4127:9: error: expected ‘}’ before ‘float’ 
In file included from examples/cpp_classification/classification.cpp:3:0: 
/usr/include/opencv2/core/core.hpp:4127:14: error: expected unqualified-id before ‘=’ token 
FLOAT=REAL, //!< synonym or REAL 
^ 
/usr/include/opencv2/core/core.hpp:4140:22: error: expected unqualified-id before ‘)’ token 
CV_WRAP FileNode(); 
^ 
/usr/include/opencv2/core/core.hpp:4142:14: error: expected unqualified-id 
before ‘const’ 
FileNode(const CvFileStorage* fs, const CvFileNode* node); 
^ 
/usr/include/opencv2/core/core.hpp:4142:14: error: expected ‘)’ before ‘const’ 
/usr/include/opencv2/core/core.hpp:4144:14: error: expected unqualified-id before ‘const’ 
FileNode(const FileNode& node); 
^ 
/usr/include/opencv2/core/core.hpp:4144:14: error: expected ‘)’ before ‘const’ 
/usr/include/opencv2/core/core.hpp:4146:49: error: non-member function ‘cv::FileNode cv::operator[](const string&)’ cannot have cv-qualifier 
FileNode operator[](const string& nodename) const; 

回答

0

我sloved自己的問題。

由於我編譯並安裝了最新的OpenBlas庫,版本0.2.19,因此發生錯誤。文件cblas.h導致了opencv問題。

我剛剛在/ usr/local/include中重命名爲cblas.h,因此命令make將使用/ usr/include中的cblas.h並最終成功。