You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows 11下使用MinGW而非VS编译安装gtest的问题

解决方法

1. 清理现有构建目录

先删除c:\MinGW\googletest\build下的所有文件,避免残留的MSVC构建配置干扰后续操作。

2. 指定MinGW生成器与编译器重新运行CMake

在PowerShell中进入干净的build目录,执行以下命令:

cmake -G "MinGW Makefiles" -DCMAKE_C_COMPILER=gcc.exe -DCMAKE_CXX_COMPILER=g++.exe ..
  • -G "MinGW Makefiles":强制CMake使用MinGW的Makefile生成规则,而非Visual Studio的项目文件
  • -DCMAKE_C_COMPILER/-DCMAKE_CXX_COMPILER:明确指定使用MinGW的gcc和g++编译器,避免CMake优先识别到MSVC

3. 编译gtest库

执行MinGW的编译命令:

mingw32-make

如果你的MinGW是64位版本,可能需要使用mingw64-make,以实际安装的命令为准

4. 全局安装(可选)

若希望gtest库能被全局调用,执行安装命令将头文件和库文件复制到MinGW的默认目录:

mingw32-make install

完成后,头文件会被放到C:\MinGW\include,库文件会被放到C:\MinGW\lib。

5. 编译并运行测试程序

现在可以用你熟悉的命令编译测试代码:

g++ -std=c++17 -pthread ./test.cpp -lgtest -lgtest_main
./a.exe

注意事项

确保MinGW的bin目录(如C:\MinGW\bin)在系统PATH中的优先级高于Visual Studio的工具链路径,避免系统优先调用MSVC相关命令。

内容的提问来源于stack exchange,提问作者user18184114

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 18:54:25