opencv_world300d.dll'。无法找到或打开 PDB 文件

opencv_world300d.dll'. Cannot find or open the PDB file

我正在尝试在 Visual studio 2013 年构建一个项目,该项目使用了一些额外的库、OpenCV 和其他文件。当我构建项目时,它是成功的,但是我 运行 创建的可执行文件停止了,给出了一些错误代码。所以我在构建时使用了Windows调试器模式 of Visual studio。并给了我以下错误:

 'static_input.exe' (Win32): Loaded 'C:\Users\amy\Downloads\clandmark-   master\clandmark\build\examples\Debug\static_input.exe'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\shell32.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\msvcrt.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\shlwapi.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\gdi32.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\user32.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\lpk.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\Windows\System32\usp10.dll'. Symbols loaded.
 'static_input.exe' (Win32): Loaded 'C:\opencv\build\x86\vc12\bin\opencv_world300d.dll'. Cannot find or open the PDB file.
 'static_input.exe' (Win32): Unloaded 'C:\opencv\build\x86\vc12\bin\opencv_world300d.dll'
 The program '[5124] static_input.exe' has exited with code -1073741701 (0xc000007b).

现在我检查了: Tools->Options->Debugging->Symbols and select 勾选框“Microsoft Symbol Servers”,标记加载所有模块然后单击加载所有符号。在 answer

中找到

当我搜索这个问题时

 opencv_world300d.dll'. Cannot find or open the PDB file

我找到了一个解决方案,opencv_world300d.dll 的 PDB 文件没有预打包版本,为此我需要从 source[=构建 OpenCV =36=]。经过长时间的搜索,我决定自己构建它,我从源代码构建了 OpenCV,并且构建成功。它围绕 56 个项目构建。

但是没有 PDBDLL 文件名称 opencv_world300d

图书馆太多了,但没有一个是你需要的。我现在被困住了,无法解决我的问题。请帮忙!

由于似乎对opencv_world有些混淆,让我们先澄清一下:

什么是opencv_world

Opencv_world 是一个 dll,它将 opencv 中的所有内容打包到库文件中。 这样做的好处是您只需要在项目文件中包含一个库,而不是 10 或 12 个库。

如何构建opencv_world

使用 cmake 配置构建时,启用选项 BUILD_opencv_world 并确保构建正常以获得 opencv_world.dll。这也应该给你 opencv_world.pdb。

我需要opencv_world吗?

没有!您可以简单地使用您想要的各个模块,而无需 opencv_world。因此,如果您不想使用 opencv_world.dll.

,则根本不需要 opencv_world pdb

什么是 pdb 文件,我需要它们吗

PDB (program database) 文件是 Microsoft 使用的包含调试信息的专有文件格式。如果您不需要调试 dll 中的代码,则不需要它,但是当您想要定位程序中的崩溃时,它非常有用。