CMake错误:CMake无法找到对应于“MinGW Makefiles”的编译程序

问题描述:

我正在尝试使用cmake为C++构建Box2D库。当我运行cmake GUI我得到的错误:CMake错误:CMake无法找到对应于“MinGW Makefiles”的编译程序

像这些人一样
CMake Error: CMake was unable to find a build program corresponding to "MinGW Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 
CMake Error: CMake was unable to find a build program corresponding to "MinGW Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage 
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage 
Configuring incomplete, errors occurred! 

大多数问题已经说“添加的MinGW/bin添加到PATH”,但我已经有一个在PATH回答。还有什么可能导致这个错误?

+0

如果你输入'mingw32-make'然后按回车键会发生什么?不应该输出''mingw32-make'不被识别为内部或外部命令,可操作程序或批处理文件。'相反,它应该输出'mingw32-make:***没有指定目标,也没有找到生成的文件。 Stop.' – rubenvb

+0

它输出“'mingw32-make'不被识别为内部或外部命令,可操作程序或批处理文件”。我安装了MinGW不正确吗? – Starfruit

+0

那么,至少'mingw32-make'不在你的PATH中,这正是CMake告诉你的。检查该程序是否在PATH中的'bin'目录中。 – rubenvb

mingw32-make.exe可以通过相应的复选框,标准MINGW32安装程序进行安装:

MinGW32 Installation Manager screenshot

由于rubenvb指出的那样,你仍然需要确保它使得它到你的PATH。如果你通过系统属性编辑你的环境变量,一定要关闭并重新打开CMake GUI。

如果您更习惯于使用make.exe,请安装MSYS并使用MSYS Makefiles作为CMake生成器。您还需要将mingw\binmsys\1.0\bin放入PATH中。