matplotlib / matplotlib/basemap
Cygwin install error: error: 'isnan' was not declared in this scope
还没有人认领这个 Issue。
- 主要语言
- Python
- 星标
- 817
- 派生
- 395
- PR 合并指标
- 30 天内没有已合并 PR
描述
Dear all,
after struggling with the installation of basemap I decided to post here. I have tried a couple of different 'hacks' found in google but none worked.
Full error:
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../include -I../../../include/geos -I../../../include -DGEOS_INLINE -pedantic -Wall -ansi -Wno-long-long -ffloat-store -g -O2 -MT IndexedPointInAreaLocator.lo -MD -MP -MF .deps/IndexedPointInAreaLocator.Tpo -c IndexedPointInAreaLocator.cpp -DDLL_EXPORT -DPIC -o .libs/IndexedPointInAreaLocator.o
In file included from ../../../include/geos/geom/Geometry.h:26:0,
from IndexedPointInAreaLocator.cpp:18:
../../../include/geos/geom/Coordinate.inl: In member function 'bool geos::geom::Coordinate::isNull() const':
../../../include/geos/platform.h:88:27: error: 'isnan' was not declared in this scopedefine ISNAN(x) (isnan(x))
^../../../include/geos/geom/Coordinate.inl:39:10: note: in expansion of macro 'ISNAN'
return (ISNAN(x) && ISNAN(y) && ISNAN(z));
^
../../../include/geos/platform.h:88:27: note: suggested alternative:define ISNAN(x) (isnan(x))
^../../../include/geos/geom/Coordinate.inl:39:10: note: in expansion of macro 'ISNAN'
return (ISNAN(x) && ISNAN(y) && ISNAN(z));
^
In file included from ../../../include/geos/geom/Coordinate.inl:23:0,
from ../../../include/geos/geom/Coordinate.h:161,
from ../../../include/geos/geom/Envelope.h:26,
from ../../../include/geos/geom/Geometry.h:28,
from IndexedPointInAreaLocator.cpp:18:
/usr/lib/gcc/x86_64-pc-cygwin/5.4.0/include/c++/cmath:862:5: note: 'std::isnan'
isnan(_Tp __f)
^
In file included from ../../../include/geos/geom/Geometry.h:26:0,
from IndexedPointInAreaLocator.cpp:18:
../../../include/geos/geom/Coordinate.inl: In member function 'bool geos::geom::Coordinate::equals3D(const geos::geom::Coordinate&) const':
../../../include/geos/platform.h:88:27: error: 'isnan' was not declared in this scopedefine ISNAN(x) (isnan(x))
^../../../include/geos/geom/Coordinate.inl:83:21: note: in expansion of macro 'ISNAN'
((z == other.z)||(ISNAN(z) && ISNAN(other.z)));
^
../../../include/geos/platform.h:88:27: note: suggested alternative:define ISNAN(x) (isnan(x))
^../../../include/geos/geom/Coordinate.inl:83:21: note: in expansion of macro 'ISNAN'
((z == other.z)||(ISNAN(z) && ISNAN(other.z)));
^
In file included from ../../../include/geos/geom/Coordinate.inl:23:0,
from ../../../include/geos/geom/Coordinate.h:161,
from ../../../include/geos/geom/Envelope.h:26,
from ../../../include/geos/geom/Geometry.h:28,
from IndexedPointInAreaLocator.cpp:18:
/usr/lib/gcc/x86_64-pc-cygwin/5.4.0/include/c++/cmath:862:5: note: 'std::isnan'
isnan(_Tp __f)
^
make[4]: *** [Makefile:373: IndexedPointInAreaLocator.lo] Error 1
make[4]: Leaving directory '/tmp/basemap/geos-3.3.3/src/algorithm/locate'
make[3]: *** [Makefile:392: all-recursive] Error 1
make[3]: Leaving directory '/tmp/basemap/geos-3.3.3/src/algorithm/locate'
make[2]: *** [Makefile:444: all-recursive] Error 1
make[2]: Leaving directory '/tmp/basemap/geos-3.3.3/src/algorithm'
make[1]: *** [Makefile:476: all-recursive] Error 1
make[1]: Leaving directory '/tmp/basemap/geos-3.3.3/src'
make: *** [Makefile:368: all-recursive] Error 1
I am installing it on cygwin 64 bits.
I have also tried to use cygwin's binaries but they give errors on a tested script.
I am not sure of any additional relevant information.
Best regards,
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先重现 Cygwin 64-bit 安装,并检查 geos-3.3.3/src/algorithm/locate/IndexedPointInAreaLocator.cpp 中失败的构建。阅读 ../../../include/geos/platform.h 和 ../../../include/geos/geom/Coordinate.inl 中 ISNAN 使用处附近的内容,然后验证 basemap 安装能够完成,并且所报告的脚本可以运行。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- cpp, python
- 领域
- build-system, operating-systems
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 30/100