[cmake-developers] [CMake 0013383]: CMAKE Autodetect defaults to "NMake Makefiles" when "MinGW Makefiles" should be used.
Mantis Bug Tracker
mantis at public.kitware.com
Sat Jul 7 04:09:24 EDT 2012
The following issue has been SUBMITTED.
======================================================================
http://public.kitware.com/Bug/view.php?id=13383
======================================================================
Reported By: Ken Phillis
Assigned To:
======================================================================
Project: CMake
Issue ID: 13383
Category: CCMake
Reproducibility: always
Severity: major
Priority: high
Status: new
======================================================================
Date Submitted: 2012-07-07 04:09 EDT
Last Modified: 2012-07-07 04:09 EDT
======================================================================
Summary: CMAKE Autodetect defaults to "NMake Makefiles" when
"MinGW Makefiles" should be used.
Description:
When i try to generate makefiles using the command line and gui program for
cmake, the autodetection feature automatically forces the makefile generator to
"NMake Makefiles". This behaviour is incorrect because I do not have visual
studio installed at all, and it causes cmake to fail in a scenario where this
should not happen.
Steps to Reproduce:
1) Use a computer that has never had Visual Studio Installed.
2) Installing Visual studio runtimes is also ok.
3) Install Mingw GCC
4) Install gnu make
4) Install CMake ( i used the provided build of cmake-2.8.8-win32-x86.zip )
5) Select any random cmake project that can be built using cmake and mingw.
6) As long as visual studio itself is not installed, get the dependencies for
said project.
7) build makefiles ( cmake . )
8) Compile project
Additional Information:
For pkg-config, see: the "Glib and PKG-CONFIG" at this page of the vlc wiki:
http://wiki.videolan.org/Win32CompileMSYSNew
The version of mingw gcc I used is tdm-gcc (mingw-w64 based). This is located
at:
http://tdm-gcc.tdragon.net/
For gnu make, I used the latest build using mingw-w64 located at:
http://sourceforge.net/projects/mingw-w64/files/External%20binary%20packages%20%28Win64%20hosted%29/make/
A temporary solution is to specify the mingw generator each time you run the
cmake, however this is extremely cumbersome and most end developers will
probably not want to mess with this in any fashion.
cmake . -G "MinGW Makefiles"
as for an more permanent solution, It's possible to fix this by improving the
autodetection code ( lines 2181 to 22225 of Source/cmake.cxx ), or provide
windows binaries that are made using mingw ( or mingw-w64) that have
"CMAKE_BOOT_MINGW" defined.
======================================================================
Issue History
Date Modified Username Field Change
======================================================================
2012-07-07 04:09 Ken Phillis New Issue
======================================================================
More information about the cmake-developers
mailing list