【问题标题】:OpenCV 2.3 in Embarcadero C++ BuilderEmbarcadero C++ Builder 中的 OpenCV 2.3
【发布时间】:2011-09-28 17:43:31
【问题描述】:

在 Builder 中编译 OpenCV 2.3 项目时,出现多个错误,以“_fm_atan2l 不是 'std' 的成员”开头,并继续以该形式出现其他与数学相关的错误。我还收到“'_Ctraits::_Isnan(double)' 的多重声明和其他类似错误。这发生在我简单地包含 OpenCV 头文件之后,因此似乎与我在应用程序本身中所做的任何事情无关。

到目前为止,我包含的唯一文件是 OpenCV 包含目录中的“cv.h”。我是不是已经做错了,还是我必须先设置其他东西?

【问题讨论】:

  • 什么版本的builder?
  • @berak 如果旧帖子有问题,应该编辑它。
  • 如果帖子的每个查看者都会投票支持 C++ Builder 对 OpenCV 的官方支持,我们将有很好的机会更快地获得该功能。 quality.embarcadero.com/browse/RSP-18125

标签: opencv c++builder compiler-warnings


【解决方案1】:

您可以从我的网站下载结合 2.3.2 和 c++ builder xe2 的简单项目: http://www.compvision.ru/forum/index.php?showtopic=763 构建器有固定的头文件,存档中有 lib 转换器。 存档中也有 .lib 文件,但如果您使用 LibConverter.exe 实用程序从您的 opencv 发行版中包含的原始 .lib 文件自己制作它们会更好。 还有一些奇怪的事情:一些dll文件需要重命名为.dl或.d之类的东西。编译好的程序会提示你。

【讨论】:

    【解决方案2】:

    您可以用bcc32 纠正OCV atan2 问题,包括std 命名空间中的fastmath(有关更多信息,请参阅:https://forums.embarcadero.com/message.jspa?messageID=363384 [^])....但之后还有更多其他问题... 到目前为止,我无法使用 CBuilder XE2 构建 OCV 2.3.1 :(

    【讨论】:

      【解决方案3】:

      This issue was extensively discussed here.

      简单的答案:选择另一个编译器来构建 OpenCV。您可以下载Visual C++ 2010 Express for free。如果你这样做了,Windows 有pre-built Visual Studio 2008/2010 binaries,所以你不需要编译它。

      【讨论】:

      • 对不起,这不仅仅是选择我想要的任何编译器的问题。我们有一个使用 C++ Builder 的标准。
      • 感谢您的链接,但不幸的是,我在该线程之后来到这里,因为它并没有真正解决问题。因为那是相当古老的,我不想复活它。比这更重要的是,这些修复似乎适用于 OpenCV 2.1 或 2.2,但不适用于 2.3。
      • 我明白了。好吧,很抱歉无法为您提供进一步的帮助。祝你好运。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-29
      • 2022-12-27
      • 2014-07-13
      • 1970-01-01
      • 1970-01-01
      • 2013-03-10
      相关资源
      最近更新 更多