[CMake] FindwxWidgets.cmake Debug flag missing

Werner Smekal smekal at iap.tuwien.ac.at
Fri May 9 11:03:46 EDT 2008


Hi,

I'm using cmake (2.4.8) with the MinGW toolkit (on Windows CLI, not  
msys) and use the FindwxWidgets.cmake module in order to find my wxMSW  
2.8.7 build. If I tell FindwxWidgets.cmake to use the debug  
configuration of wxMSW (-DCMAKE_BUILD_TYPE=Debug - 
DwxWidgets_CONFIGURATION=mswd) the programs drop out with the message:

Mismatch between the program and library build versions detected.
The library used 2.8 (debug, ANSI, compiler .......
and your program used 2.8 (no denug, ANSI, .......

With mingw32-make VERBOSE=1 I saw, that my executable is linked to the  
debug versions of wxMSW, but during compilation __WXDEBUG__ is not  
defined. This explains the error message - if I define __WXDEBUG__ by  
hand, this message goes away. I also can't find in FindwxWidgets.cmake  
__WXDEBUG__.

I just checked - I get the same problem with cmake 2.6.0. Looking at  
the compilation options for the samples in wxMSW __WXDEBUG__ is  
actually set if using the debug version of wxMSW. Interestingly this  
doesn't happen for the Visual C++ compiler toolset. Anyway, I'm quite  
sure that __wxDEBUG__ must be defined in case of WIN32_STYLE_FIND.

Any comments? Should I file a bug report?

Thanks,
Werner

--
Dr. Werner Smekal
Institut fuer Allgemeine Physik
Technische Universitaet Wien
Wiedner Hauptstr 8-10
A-1040 Wien
Austria

email: smekal at iap.tuwien.ac.at
web: http://www.iap.tuwien.ac.at/~smekal
phone: +43-(0)1-58801-13463 (office), +43-(0)1-58801-13469 (laboratory)
fax: +43-(0)1-58801-13499



More information about the CMake mailing list