首页 > 解决方案 > 无法使用 MinGW 和 MSYS 构建 Google 测试 - 找不到 crtdbg.h

问题描述

我正在尝试在此页面的帮助下使用 MSYS 和 MinGW 构建 Google 测试。

我在 MS Windows 10 Home 上安装了 MinGW 和 MSYS。到目前为止,我已经在 MSYS 终端的 Google 测试源代码目录中运行了这些命令:

mkdir build

cd build

cmake -G "MSYS Makefiles" ..

make

make命令失败并显示以下输出:

In file included from c:/MinGW/msys/1.0/home/mkkek/googletest-release-1.10.0/googletest/src/gtest-all.cc:41:
C:/MinGW/msys/1.0/home/mkkek/googletest-release-1.10.0/googletest/src/gtest.cc:86:11: fatal error: crtdbg.h: No such file or directory
   86 | # include <crtdbg.h>  // NOLINT
      |           ^~~~~~~~~~
compilation terminated.
make[2]: *** [googletest/CMakeFiles/gtest.dir/src/gtest-all.cc.obj] Error 1
make[1]: *** [googletest/CMakeFiles/gtest.dir/all] Error 2
make: *** [all] Error 2

crtdbg.h似乎是一个 Visual C++ 头文件。我确实安装了 Windows 10 SDK 和 Visual C++,但构建系统没有找到标头。

我读过这个线程,但那里的提示都没有帮助。

我会很感激任何帮助。

标签: c++mingwgoogletestmsys

解决方案


我按照评论中的建议切换到 MSYS2,并且成功地构建了库。

我按照项目主页上的说明安装 MSYS2。


推荐阅读