使用mingw编译时缺少assert.h

时间:2011-11-27 05:57:04

标签: 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的\包括\ ASSERT.H

我是在我面前的洞时间!!! 我的错! THX。

1 个答案:

答案 0 :(得分: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捆绑在一起的完整开发包。