由于tgmath.h和complex.h,在最新的Cygwin中使用GCC编译C程序时出现问题

问题描述 投票:0回答:2

我已在 Mac OS X 和 Linux 中使用

GCC
成功编译了 C 程序,但在 Cygwin 1.7.5 中收到以下错误消息:

/usr/lib/gcc/i686-pc-cygwin/4.3.4/include/tgmath.h:38:21: error: complex.h: No 
such file or directory

我注意到有几个人报告 tgmath.h 在 Cygwin 中存在问题。然而,由于缺乏知识,我无法理解这些问题是否已经解决或者它们是否与我收到的错误有关。例如,参见:

  1. http://cygwin.com/ml/libc-alpha/1999-12/msg00021.html
  2. http://cygwin.com/ml/libc-hacker/2007-07/msg00012.html

作为实验,我的同事将

include <tgmath.h>
替换为
include <math.h>
。然而,代码抛出了异常。

你能解释一下 Cygwin 的

tgmath.h
complex.h
可能出现什么问题,以及我该如何解决它吗?

c windows gcc cygwin
2个回答
0
投票

这可能完全错误,但请确保您使用

-std=c99
进行编译,complex.h 是 C99 标准的一部分。


0
投票

不幸的是,complex.h 的内容尚未在 Cygwin 中实现(或者更准确地说,对于 newlib,它是 Cygwin 使用的 C 库)。

http://cygwin.com/cygwin-api/std-notimpl.html

© www.soinside.com 2019 - 2024. All rights reserved.