【问题标题】:opencv error when compiling caffe-1.0 on ubuntu14.04在 ubuntu14.04 上编译 caffe-1.0 时出现 opencv 错误
【发布时间】:2017-09-30 20:24:41
【问题描述】:

我在使用 opencv 编译最新的 caffe-1.0 时遇到了一个错误。
我在 ubuntu14.04 上使用 gcc-4.8.5 和 cuda8.0 和 cudnn5.1 编译它。
我尝试了不同版本的 opencv(2.4.8, 2.4.13, 3.2.0) 但错误仍在继续。
错误如下:

/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;

【问题讨论】:

    标签: c++ opencv ubuntu caffe


    【解决方案1】:

    我自己解决了这个问题。

    发生错误是因为我编译并安装了最新的 OpenBlas 库,版本 0.2.19。文件 cblas.h 导致了 opencv 问题。

    我刚刚重命名了 /usr/local/include 中的 cblas.h,所以命令 make 将使用 /usr/include 中的 cblas.h 并最终成功。

    【讨论】:

      猜你喜欢
      • 2016-12-21
      • 1970-01-01
      • 2017-07-13
      • 2015-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多