opencv2.4.4 Visual Studio 2012 找不到或打开PDB文件

2023-12-03

我正在使用 opencv libraray 和 VS2012 运行一个程序。我使用的是Windows 7 64位,所以我通过项目属性将配置管理器更改为x64。在我的系统环境变量中,我首先从命令提示符处输入了这些条目:setx -m OPENCV_DIR C:\OpenCV\build并将其添加到系统路径中:%OPENCV_DIR%\build\x64\vc11\bin

在 Visual Studio 的属性管理器中,我将以下文件夹链接添加到项目属性:

  1. 在 C/C++ 下,附加包含目录,我添加了:$(OPENCV_DIR)\include

  2. 在链接器、附加库目录下,我添加了;$(OPENCV_DIR)\x64\vc10\lib;

  3. 链接器、输入、附加依赖项,我添加了以下内容:

    opencv_core244d.lib opencv_imgproc244d.lib opencv_highgui244d.lib opencv_ml244d.lib opencv_video244d.lib opencv_features2d244d.lib opencv_calib3d244d.lib opencv_objdetect244d.lib opencv_contrib244d.lib opencv_legacy244d.lib opencv_flann244d.lib opencv_gpu244d.lib opencv_nonfree244d.lib opencv_photo244d.lib opencv_stitching244d.lib opencv_ts244d.lib opencv_videostab244d.lib

当我运行我的程序时,我遇到了这个错误

“ConsoleApplication0.exe”(Win32):已加载“D:\configuration\ConsoleApplication0\x64\Debug\ConsoleApplication0.exe”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\ntdll.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\kernel32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\KernelBase.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\opencv\build\x64\vc11\bin\opencv_core244d.dll”。无法找到或打开 PDB 文件。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\msvcp110d.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\msvcr110d.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\opencv\build\x64\vc11\bin\opencv_imgproc244d.dll”。无法找到或打开 PDB 文件。 “ConsoleApplication0.exe”(Win32):已加载“C:\opencv\build\x64\vc11\bin\opencv_highgui244d.dll”。无法找到或打开 PDB 文件。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\user32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\gdi32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32): 已加载“C:\Windows\System32\lpk.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\usp10.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\msvcrt.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\ole32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\rpcrt4.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\oleaut32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\advapi32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\sechost.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.17514_none_a4d6a923711520a9\comctl32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\msvfw32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\winmm.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\shell32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\shlwapi.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\avifil32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\msacm32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\avicap32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\version.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\opencv\build\x64\vc11\bin\opencv_objdetect244d.dll”。无法找到或打开 PDB 文件。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\imm32.dll”。符号已加载。 “ConsoleApplication0.exe”(Win32):已加载“C:\Windows\System32\msctf.dll”。符号已加载。 程序“[4228] ConsoleApplication0.exe”已退出,代码为 1 (0x1)。

有谁知道为什么会发生这种情况?


这些都不是致命错误消息。这些只是诊断性陈述(例如,没有任何问题,它只是通知您某些事件)。

PDB 文件是 Visual Studio 特定的文件,其中包含项目的调试符号。如果您使用 OpenCV 的预构建库/dll,则不会有任何这些文件。幸运的是,您可以忽略这些消息,除非您希望使用调试器单步执行这些 dll 的代码。

如果它足够困扰你,你可以从源代码重新构建 opencv 并启用/ZI or /Zi选项。然而,就目前情况而言,这些消息都不会表明有任何问题。您的程序以代码 1 (0x1) 退出是由其他原因引起的,但您没有提供足够的信息来确定原因。

以下是来自 MSDN 的 PDB 文件的官方描述:

程序数据库 (PDB) 文件保存调试和项目状态信息,允许增量链接程序的调试配置。当您使用 /ZI 或 /Zi 编译 C/C++ 程序时,会创建 PDB 文件

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

opencv2.4.4 Visual Studio 2012 找不到或打开PDB文件 的相关文章

随机推荐