OpenCV 2.4.x minGW precompiled dlls (Bug #2112)


Added by Martin Malchow over 12 years ago. Updated over 12 years ago.


Status:Cancelled Start date:2012-06-29
Priority:Normal Due date:
Assignee:Evgeny Talanin % Done:

0%

Category:build/install
Target version:2.4.2 Estimated time:1.00 hour
Affected version: Operating System:
Difficulty: HW Platform:
Pull request:

Description

The precompiled dlls for minGW does not work. I have to rename the visualstudio dlls and put it directly to the exe folder as a workaround. Otherwise the will be an init error while starting the application.


Associated revisions

Revision d64f05cd
Added by Andrey Pavlenko about 11 years ago

Merge pull request #2112 from ilya-lavrenov:tapi_stitching

History

Updated by Vadim Pisarevsky over 12 years ago

  • Priority changed from High to Normal

Updated by Vadim Pisarevsky over 12 years ago

Martin, could you please, specify, which development environment you use, which version of OpenCV, and which visual studio DLLs you needed to put into the .exe directory to make it work?

Updated by Martin Malchow over 12 years ago

I use Eclipse. But I also tried it via windows comandline with the same result. The tested OpenCV versions are 2.4.0 and 2.4.1
I put the x86 vc10 opencv_core241 and opencv_highgui241 with prefix lib in the .exe directory

Updated by Evgeny Talanin over 12 years ago

I wasn't able to reproduce this issue.
My steps were:
1. Download OpenCV 2.4.1 from http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.1/OpenCV-2.4.1.exe/download (link on http://opencv.org main page) and unpack to c:\opencv241
2. Take cmake script and sample source code from http://opencv.willowgarage.com/wiki/Getting_started (also add cmake_minimum_required directive), configure and generate them with CMake GUI tool. Also I manually set six OpenCV_* variables since by default they point to the different location on my machine.
3. Run c:\mingw32\bin\mingw-make.exe against generated Makefile
4. Add c:\opencv241\opencv\build\x86\mingw\bin to the PATH system variable and enjoy working sample executable.
To confirm that executable really uses dll from this path and so they work you can copy dlls required by this application (libopencv_highgui241.dll and libopencv_core241.dll) to the .exe directory before making changes to PATH

  • Status changed from Open to Cancelled
  • Assignee changed from Alexander Shishkov to Evgeny Talanin

Updated by Martin Malchow over 12 years ago

That is wiered! I tried it on different undependend machines (one is XP and one is 7). I always get the same error: http://i.stack.imgur.com/zdmT7.png
I showed it a colleague and he give me the advise with renaming the visualstudio dlls because he had the same issue and can solve it like this.

I do not really get the Cmake thing to work. But in eclipse I can compile without problems but can not run the excecutable ... I configured eclipse like here http://opencv.willowgarage.com/wiki/Eclipse with some changes for the new opencv version and without using make-files.

If I use the eclipse debugger I get this stack trace:

ntdll!LdrAccessResource() at 0x7c91e514 ntdll!ZwWaitForSingleObject() at 0x7c91df5a ntdll!RtlpWaitForCriticalSection() at 0x7c929b23 ntdll!RtlEnumerateGenericTableLikeADirectory() at 0x7c911046 0x198e174 ntdll!RtlSetEnvironmentVariable() at 0x7c934d2d ntdll!NtAccessCheckByTypeResultListAndAuditAlarm() at 0x7c98e174 0x58fd30 ntdll!LdrCreateOutOfProcessImage() at 0x7c91e457

Updated by Martin Malchow over 12 years ago

Today I tried it with cmake like Evgeny Talanin described. But it's the same error again.
I also write something more complex and my solution with changing the dlls does not work anymore. Is it possible that someone can help me solving my problem? Via teamviewer or something else. I don't know what to do to solve that crazy init error.

Thank you a lot!

Also available in: Atom PDF