使用mingw编译时缺少assert.h

mrs*_*eve 1 c mingw tcl

我正在用MinGW编译C代码.C代码是tcl包/扩展.

(使用MinGW compilor,下载:mingw-get-inst-20111118.exe)

编译代码(例如tcl包)在linux下运行正常.我正在运行"./configure"并使用提供的"Makefile.in".

问题是C代码在某些时候包括"assert.h".

其他头文件很好,例如"string.h"和"stdlib.h".这是因为TCL源包含一个名为"./compat"的子文件夹.在此填充程序中,头文件的位置是为了防止在其他地方找不到它们.

但是在"./compat"文件夹中缺少文件"assert.h".所以我收到了一个错误.

我在"c:\ MinGW\include"中搜索了头文件,但我没有在那里找到"assert.h".

要么我在"./compat"文件夹中复制我自己的"assert.h".或者我安装了一些MinGW包,它将一些"assert.h"放在"c:\ MinGW \"的子文件夹中.

===解决方案:====
c:\ MinGW\include\assert.h

我是在我面前的洞时间!!! 我的错!谢谢.

Red*_*met 5

<assert.h> 是标准C的一部分,包含在基础开发包中:

你下载了开发包吗?你下载了吗? http://sourceforge.net/projects/mingw/files/MinGW/Base/mingw-rt/mingwrt-3.20/

我不知道tcl包的特性,但如果它包含自己的assert.h.那么你应该在Include路径中包含它以及它附带的库.

您使用的是哪个IDE?

看来你只是部分下载了mingw.下载与Codelite和Code :: Blocks等IDE捆绑在一起的完整开发包.