C++ CMake找不到g++;Windows上的编译器

C++ CMake找不到g++;Windows上的编译器,c++,windows,cmake,g++,C++,Windows,Cmake,G++,我有一个CMake项目,我想用g++编译。该项目在Linux上编译和运行。现在我正试图让它在Windows上工作 出于这个原因,我安装了MinGW并将其添加到路径中,现在使用的是gitbash。为了强制CMake使用g++,我添加了以下环境变量: CC = C:\MinGW\bin\gcc CXX = C:\MinGW\bin\g++ 但当我运行CMake时,它不会检测到任何编译器并告诉我: -- The C compiler identification is unkown -- The

我有一个CMake项目,我想用g++编译。该项目在Linux上编译和运行。现在我正试图让它在Windows上工作

出于这个原因,我安装了MinGW并将其添加到路径中,现在使用的是gitbash。为了强制CMake使用g++,我添加了以下环境变量:

CC = C:\MinGW\bin\gcc
CXX = C:\MinGW\bin\g++

但当我运行CMake时,它不会检测到任何编译器并告诉我:

-- The C compiler identification is unkown
-- The CXX compiler identification is unkown

我在github上创建了一个超级基本示例,我想在Windows+MinGw上运行它:

如何在windows中使用env变量强制CMake使用g++和gcc编译器?

我需要在CMake命令中添加
-g“MinGW Makefiles”

我检查我是否在Windows上,如果是,我将参数添加到shell脚本中的CMake命令中。 在Windows上时,我还需要使用
mingw32 make
而不是
make


现在还有一些其他问题,但它解决了我发布的问题。

添加env变量后,关闭当前终端并打开一个新的终端会有帮助。更改
路径后是否重新启动终端?如果您在bash中
echo$PATH
,MingW的
bin
目录在那里吗?@molbdnilo:OP没有更改PATH变量。@IInspectable这不是我解释“添加到路径”的方式。我所说的“添加到路径”是指我在路径中添加了“C:\MingW\bin”和“C:\MingW\msys\1.0\bin”。后来我重新启动了我的机器以防万一。当
echo$PATH
显示这两条路径时。