0

I have seen this problem fixed for Windows 7 and other versions of Visual Studio, but none of these methods have fixed my problem.

I have installed opencv 2.4.2 with Visual Studio C++ 2012, and I have already changed the property pages to include the Additional Directories for C/C++ -> General, Additional Libraries for Linker->General, and additional dependencies for Linker->Input. I have also added the appropriate paths to the environment variable "Path."

Still, I am getting the following error:

'PlanarHomography.exe' (Win32): Loaded 'C:\opencv-2.4.2\opencv\build\x64\vc12\bin\opencv_calib3d2413.dll'. Cannot find or open the PDB file.

'PlanarHomography.exe' (Win32): Loaded 'C:\opencv-2.4.2\opencv\build\x64\vc12\bin\opencv_core2413.dll'. Cannot find or open the PDB file.

'PlanarHomography.exe' (Win32): Loaded 'C:\opencv-2.4.2\opencv\build\x64\vc12\bin\opencv_features2d2413.dll'. Cannot find or open the PDB file.

'PlanarHomography.exe' (Win32): Loaded 'C:\opencv-2.4.2\opencv\build\x64\vc12\bin\opencv_flann2413.dll'. Cannot find or open the PDB file.

'PlanarHomography.exe' (Win32): Loaded 'C:\opencv-2.4.2\opencv\build\x64\vc12\bin\opencv_imgproc2413.dll'. Cannot find or open the PDB file.

Any assistance on what to do here would be greatly appreciated.

DrE
  • 1
  • 2
    For Visual Studio 2012 you need to use the libs/dlls from the vc11 folder. vc12 = Visual Studio 2013. http://stackoverflow.com/a/21730219/487892 – drescherjm Jun 16 '16 at 15:22
  • I did this, and I still had problems. I'm used to using Eclipse and had to use Visual Studio for someone else's project. I didn't realize, different dll files were needed for "release" and "debug" modes. Adding "d" to the end of each file name fixed my problem. – DrE Jun 17 '16 at 16:19

1 Answers1

0

I'm used to using Eclipse and had to use Visual Studio for someone else's project. I didn't realize, different .dll files were needed for "release" and "debug" modes. Adding "d" to the end of each file name fixed my problem.

For example: opencv_calib3d2413.dll (for release) should instead be opencv_calib3d2413d.dll (for debug).

DrE
  • 1
  • Yes different dlls are needed for each compiler and for debug / release since each version of Visual Studio has a different implementation of the standard library and a different heap. Also the debug heap is incompatible with the release heap so its essential use the correct dlls for your compiler and configuration any other usage will cause UB because `opencv` does not isolate the CRT and standard library. – drescherjm Jun 17 '16 at 16:35