【问题标题】:Can a project be build even missing a lib?即使缺少库也可以构建项目吗?
【发布时间】:2021-04-18 01:26:13
【问题描述】:

有一个 Visual Studio 项目引用 opencv_world440.lib,但它似乎在 vcpkg 上不可用。 我知道 vcpkg 有 opencv 4.3。为了继续,我尝试从中删除 opencv_world440.lib VS、项目、属性、链接器、输入、附加依赖项和项目构建成功。但是当我尝试 运行它会返回一个应用程序错误

应用程序无法正确启动 (0xc0000017)。

我不确定这里发生了什么。我可以得出结论,该项目实际上不依赖于opencv_world440.lib 因为当我移除它时它会生成?

【问题讨论】:

  • 将库文件放在文件夹中,然后尝试从该文件夹运行应用程序,或者简单地说,将应用程序和库文件放在同一个文件夹中,然后尝试运行

标签: c++ visual-studio opencv


【解决方案1】:

尝试使用dependency walker 来查看它是否与库有关。无论如何,错误代码代表 STATUS_NO_MEMORY,如 here 所述,表示内存有问题(也可能是操作系统级别的问题!?),抱歉,我不能更具体。

编辑

“opencv_world”似乎只是一个包含所有 OpenCV 模块的 DLL,使其更易于分发。另一种方法是每个模块有一个库。所以我想如果你有所有其他的库并且它可以构建,你就不需要 opencv_world。如果您没有所有必要的库,在少数情况下您将无法构建项目。

【讨论】:

  • 我可以得出结论,该项目实际上并不依赖于 opencv_world440.lib,因为它是在我删除它时构建的?
  • 是的,我想是的。我对 opencv_world 做了一些研究并编辑了我的回复。
猜你喜欢
  • 2011-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-06
  • 2020-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多