c++ 无法使用MinGW和MSYS构建Google测试-找不到crtdbg. h

cld4siwp  于 2023-02-01  发布在  Go
关注(0)|答案(2)|浏览(176)

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

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,但构建系统找不到头文件。
我读过this thread,但没有一个提示有帮助。
我很感激你的帮助。

mzaanser

mzaanser1#

我按照评论中的建议切换到了MSYS2,并且成功地构建了这个库。
我按照project home page上的说明安装了MSYS2。

ffvjumwh

ffvjumwh2#

使用MSYS2,可以直接安装mingw-w64-x86_64-gtest包,以便使用Google Test。

pacman -S mingw-w64-x86_64-gtest

相关问题