CMake在Windows上找不到g++编译器。

4
我有一个CMake项目,想要使用g++编译。该项目可以在Linux上编译和运行。现在我正在尝试让它在Windows上工作。
为此,我安装了MinGW并将其添加到了PATH中,我正在使用Git Bash。为了强制CMake使用g++,我添加了以下环境变量:
CC = C:\MinGW\bin\gcc
CXX = C:\MinGW\bin\g++

Git Bash输出printenv结果

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

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

CMake找不到C和C++编译器

我在github上创建了一个超级简单的示例,希望能在Windows + MinGW上运行:https://github.com/j-o-d-o/Basic-CMake-Project

如何使用Windows中的环境变量来强制CMake使用g++和gcc编译器?


添加环境变量后,关闭当前终端并打开一个新的终端会有所帮助。 - P.W
1
更改 PATH 后,您是否重新启动了终端?如果在 bash 中运行 echo $PATH,MingW 的 bin 目录是否存在? - molbdnilo
@molbdnilo:OP没有改变PATH变量。 - IInspectable
@IInspectable,我不这样理解“将其添加到路径中”。 - molbdnilo
我所说的“将其添加到路径中”是指我将“C:\MinGW\bin”和“C:\MinGW\msys\1.0\bin”添加到了PATH中。之后我为了确保生效,重启了我的机器。当我执行echo $PATH时,这两个路径都显示出来了。 - Jodo
1个回答

5
我需要在CMake命令中添加-G "MinGW Makefiles"
我会检查是否在Windows系统上,如果是,则在shell脚本中将该参数添加到CMake命令。同时,在Windows系统上,我需要使用mingw32-make而不是make
现在还有一些其他问题,但这解决了我所发布的问题/疑问。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接