【问题标题】:using opencv with visual studio 2013在 Visual Studio 2013 中使用 opencv
【发布时间】:2013-10-19 08:24:07
【问题描述】:

我在我的机器上安装了 opencv 2.4.6,并希望将它与也安装的 Visual Studio 2013 一起使用。

在进行常规配置后,我遇到了

1>opencv_core246d.lib(alloc.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1700' doesn't match value '1800' in main.obj

还有许多其他类似的错误。

我发现这个question 与我的问题类似。接受的答案告诉我要更改 opencv,但我找不到 Visual Studio 2013 的 opencv。第二个答案根本没有帮助。

有没有其他方法可以解决这个问题,或者我应该将我的visual studio 更改为2012

提前致谢。

【问题讨论】:

    标签: c++ opencv visual-studio-2012


    【解决方案1】:

    我遇到了同样的错误。你是在 64 位机器上吗?我按照为 64 位程序安装 opencv 的说明解决了这个问题。

    查看本教程: http://www.anlak.com/using-opencv-2-4-x-with-visual-studio-2010-tutorial/

    但只有在发布模式下运行程序才有效!

    【讨论】:

    • 我已经解决了这个问题,通过删除机器中与visual studio相关的所有内容,然后我重新安装了VS2010。我有另一台机器,其中有一个工作的 VS2010。我更改了Properties > C/C++ > CommandLineProperties > Linker > CommandLine 下命令行的差异。然后它起作用了。由于检查了很多说明,我已经严重损坏了配置。顺便谢谢。
    【解决方案2】:

    如果您想将 VS2013 与 OpenCV 一起使用,您需要使用 OpenCV 2.4.7.2(或更高版本)。见http://opencv.org/opencv-2-4-7-2-for-windows-release.html

    此版本包含主要针对 OpenCL 相关内容(“ocl”模块)的修复和改进,以及使用 VS 2013 进行编译的修复。

    【讨论】:

      【解决方案3】:

      在 Visual Studio 2013 中,应该可以使用 VS2012 (VC11) 的编译器和链接器。
      Configuration Properties > General > Platform Tool Set,下拉列表中有v110吗?如果是,选择它,您的可执行文件将使用VS2012的工具编译和链接

      【讨论】:

      • 不,它没有v110,它有v120(for VS2013), v100(for VS2010), v90(for VS2008)
      • 这样的话,如果你能用VC100编译opencv,那么你也可以用VC100
      • 或者,如果你安装了 Visual Studio 2012 Express Edition,你应该可以在你的 Visual Studio 2013 中选择 v110(虽然我不是 100% 确定)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-15
      • 1970-01-01
      • 1970-01-01
      • 2017-04-04
      • 2014-12-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多