我在Windows上使用MinGW GCC + Eclipse时遇到此错误:C:\程序文件\ITG衍生产品有限责任公司\api_clear-2.0.2.48\包括/windows/csassert.h:12:20:致命错误crtdbg.h没有这样的文件或目录什么是crtdbg.h文件?我如何才能得到它并解决这个问题?
crtdbg.h
kqlmhetl1#
我遇到了这个完全相同的问题,但使用的是Visual Studio社区版2019。解决方案是使用Visual Studio安装程序下载Windows 10 SDK。一旦我这样做了,下一次编译就运行得很好。头文件“crtdbg.h”是Windows 10 SDK工具包的一部分。我相信您可以在以下位置找到crtdbg.h:C:\Program Files...或C:\Program Files(x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\crtdbg.h,具体取决于您的设置和版本。
ippsafx72#
<crtdbg.h>是Microsoft Visual C++特定的信头。您可以使用类似下列的Stub来解决这个问题:
<crtdbg.h>
#ifdef _MSC_VER #include <crtdbg.h> #else #define _ASSERT(expr) ((void)0) #define _ASSERTE(expr) ((void)0) #endif
请注意,这将禁用您正在编译的代码中的任何Assert,如果您正在编译的代码使用crtdbg.h中更高级的特性,如内存泄漏检测,这仍然不会对您有所帮助。如果这些特性正在使用,您将需要使用MSVC++而不是MinGW来编译代码。
kknvjkwl3#
我遇到了这个完全相同的问题,但是使用的是Visual Studio代码。首先启动/重新启动VS安装程序并安装Win10 SDK。然后重新启动计算机,所需的Heasers就可用了。
ogsagwnx4#
我是从这里来的。安装Visual Studio 2019预览版(2022预览版)后,我已经面临同样的问题。打开Developer Command Prompt并转到特定文件夹后,cl test.cpp出现上述错误。
Developer Command Prompt
cl test.cpp
解决:
安装Visual Studio 2022预览版或任何其他版本后,请对系统执行reboot。重新启动后,我可以成功地运行cl命令,并编译了一个测试程序,没有任何上述错误。
reboot
cl
pftdvrlh5#
我最近在尝试安装LLVM/Visual Studio代码时遇到了这个问题。clang编译器需要安装Windows SDK。要安装Windwos SDK,请打开/下载Visual Studio安装程序,并在使用C++开发的桌面中检查Windows 10 SDK
iecba09b6#
如果您有Windows SDK,但仍然有此错误,请转到项目属性-〉VC++ -〉包含目录。然后粘贴C:\Program Files(x86)\Windows Kits\10\Include(Version)\ucrt
ttisahbt7#
只是请注意,我得到了同样的错误,在Visual Studio 2022安装在Win 10版本21H2。解决方案是安装最新的Windows 10 SDK从here,然后重新启动计算机。
goqiplq28#
我遇到了这个问题,我尝试通过上面提到的Visual Studio更新SDK,但没有用。我做的一件事是用旧PC下载SDK,通过USB传输内容。取Visual Studio正在查找的文件目录,并将所有内容从USB中下载的SDK复制到Visual Studio中提到的文件路径/目录。希望这对你有帮助。
8条答案
按热度按时间kqlmhetl1#
我遇到了这个完全相同的问题,但使用的是Visual Studio社区版2019。
解决方案是使用Visual Studio安装程序下载Windows 10 SDK。一旦我这样做了,下一次编译就运行得很好。
头文件“crtdbg.h”是Windows 10 SDK工具包的一部分。我相信您可以在以下位置找到crtdbg.h:C:\Program Files...或C:\Program Files(x86)\Windows Kits\10\Include\10.0.19041.0\ucrt\crtdbg.h,具体取决于您的设置和版本。
ippsafx72#
<crtdbg.h>
是Microsoft Visual C++特定的信头。您可以使用类似下列的Stub来解决这个问题:请注意,这将禁用您正在编译的代码中的任何Assert,如果您正在编译的代码使用
crtdbg.h
中更高级的特性,如内存泄漏检测,这仍然不会对您有所帮助。如果这些特性正在使用,您将需要使用MSVC++而不是MinGW来编译代码。kknvjkwl3#
我遇到了这个完全相同的问题,但是使用的是Visual Studio代码。首先启动/重新启动VS安装程序并安装Win10 SDK。然后重新启动计算机,所需的Heasers就可用了。
ogsagwnx4#
我是从这里来的。
安装Visual Studio 2019预览版(2022预览版)后,我已经面临同样的问题。
打开
Developer Command Prompt
并转到特定文件夹后,cl test.cpp
出现上述错误。解决:
安装Visual Studio 2022预览版或任何其他版本后,请对系统执行
reboot
。重新启动后,我可以成功地运行
cl
命令,并编译了一个测试程序,没有任何上述错误。pftdvrlh5#
我最近在尝试安装LLVM/Visual Studio代码时遇到了这个问题。clang编译器需要安装Windows SDK。
要安装Windwos SDK,请打开/下载Visual Studio安装程序,并在使用C++开发的桌面中检查Windows 10 SDK
iecba09b6#
如果您有Windows SDK,但仍然有此错误,请转到项目属性-〉VC++ -〉包含目录。然后粘贴C:\Program Files(x86)\Windows Kits\10\Include(Version)\ucrt
ttisahbt7#
只是请注意,我得到了同样的错误,在Visual Studio 2022安装在Win 10版本21H2。解决方案是安装最新的Windows 10 SDK从here,然后重新启动计算机。
goqiplq28#
我遇到了这个问题,我尝试通过上面提到的Visual Studio更新SDK,但没有用。我做的一件事是用旧PC下载SDK,通过USB传输内容。取Visual Studio正在查找的文件目录,并将所有内容从USB中下载的SDK复制到Visual Studio中提到的文件路径/目录。
希望这对你有帮助。