Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

which mingw compiler is used to create the pre-build libs in 2.4.3 release

Hi, I found that the OpenCV-2.4.3.exe file is quite huge, if I unzip it, it will takes larger then 3G Bytes. So, I just extract the pre-build libs for mingw (x86) and the include folder.

Now, here comes a question: I use the dependency walkers to check the files under: OpenCV-2.4.3.exe\opencv\build\x86\mingw\bin\, it looks like those dlls was depend on some dlls like: LIBGCC_S_DW2-1.DLL and LIBSTDC++-6.DLL. So, where does those dlls come from. I mean: which mingw compiler suite was used to build the mingw libs.

Currently, there are a lot of mingw suites in the world, TDM-GCC 4.6.x? official-mingw 4.6.x or official-mingw-4.7.x? Some compilers were DW2 and others were SJLJ exception module.

I can't find any documents about this, thanks.(also, I would like to see the build log(options passed to the gcc)

which mingw compiler is used to create the pre-build libs in 2.4.3 release

Hi, I found that the OpenCV-2.4.3.exe file is quite huge, if I unzip it, it will takes larger then 3G Bytes. So, I just extract the pre-build libs for mingw (x86) and the include folder.

Now, here comes a question: I use the dependency walkers to check the files under: OpenCV-2.4.3.exe\opencv\build\x86\mingw\bin\, it looks like those dlls was depend on some dlls like: LIBGCC_S_DW2-1.DLL and LIBSTDC++-6.DLL. So, where does those dlls come from. I mean: which mingw compiler suite was used to build the mingw libs.

Currently, there are a lot of mingw suites in the world, TDM-GCC 4.6.x? official-mingw 4.6.x or official-mingw-4.7.x? Some compilers were DW2 and others were SJLJ exception module.

I can't find any documents about this, thanks.(also, I would like to see the build log(options passed to the gcc)

Here is my test app code:

#include <stdio.h>
#include "opencv2/core/core.hpp"
#include "opencv2/imgproc/types_c.h"

using namespace cv;

int main()
{
    printf("Hello world!\n");
    Mat x = Mat(4, 4, CV_32S);

    return 0;
}

Also, the bt of the crash:

    Program received signal SIGSEGV, Segmentation fault.
In libstdc++-6!_ZN9__gnu_cxx18__exchange_and_addEPVii () (E:\code\gcc\MinGW\bin\libstdc++-6.dll)

[debug]> bt 30
[debug]#0  0x6fc5b94e in libstdc++-6!_ZN9__gnu_cxx18__exchange_and_addEPVii () from E:\code\gcc\MinGW\bin\libstdc++-6.dll
[debug]#1  0x6fc58bbc in libstdc++-6!_ZN9__gnu_cxx12__atomic_addEPVii () from E:\code\gcc\MinGW\bin\libstdc++-6.dll
[debug]#2  0x6fc60c76 in libstdc++-6!_ZN9__gnu_cxx9free_list8_M_clearEv () from E:\code\gcc\MinGW\bin\libstdc++-6.dll
[debug]#3  0x6fc89d6e in libstdc++-6!_ZNSs4_Rep10_M_refcopyEv () from E:\code\gcc\MinGW\bin\libstdc++-6.dll
[debug]#4  0x6fc89e66 in libstdc++-6!_ZNSs4_Rep7_M_grabERKSaIcES2_ () from E:\code\gcc\MinGW\bin\libstdc++-6.dll
[debug]#5  0x6fc8bf4b in libstdc++-6!_ZNSsC1ERKSs () from E:\code\gcc\MinGW\bin\libstdc++-6.dll
[debug]#6  0x61bf773e in _fu2730___ZNSs4_Rep20_S_empty_rep_storageE () from E:\code\opencv\2.4.3\mingw\bin\libopencv_core243.dll
[debug]#7  0x61bbe1cc in _fu1594___ZNSs4_Rep20_S_empty_rep_storageE () from E:\code\opencv\2.4.3\mingw\bin\libopencv_core243.dll
[debug]#8  0x0022fea0 in ?? ()
[debug]#9  0xffffffff in ?? ()
[debug]#10 0x00000000 in ?? ()
[debug]>>>>>>cb_gdb:
[debug]> quit