RGeo:proj4不支持错误?

时间:2014-05-23 18:15:45

标签: ruby-on-rails rgeo

我不熟悉使用地理空间数据并正在使用Rails RGeo gem。我在rails控制台中收到以下错误:

> geo_shape = ES_Zone::FACTORY.parse_wkt
RGeo::Error::UnsupportedOperation: Proj4 is not supported because the proj4 library was not found at install time.

当我测试是否支持proj4时,它可以预测会返回为假。

> RGeo::CoordSys::Proj4.supported?
=> false 

我用Google搜索了错误消息,但我找不到任何有关此特定问题的资源。有什么想法吗?

1 个答案:

答案 0 :(得分:5)

如错误所示,在安装RGeo gem期间未安装Proj4 library

默认情况下,RGeo期望Proj4库位于以下目录之一:

/usr/local
/usr/local/proj
/usr/local/proj4
/opt/local
/opt/proj
/opt/proj4
/opt
/usr
/Library/Frameworks/PROJ.framework/unix

如果您将其安装在其他地方,则需要使用选项--with-proj-dir=/path/to/proj4/directory安装RGeo gem。

我建议您gem uninstall rgeo,将Proj4安装到其中一个默认目录,然后再安装gem install rgeo

您可以在projected_factory lib/rgeo/geographic/interface.rb方法的顶部找到您收到的错误消息。 RGeo::CoordSys::Proj4.supported?反过来查找是否存在_create方法。这是由基于C库安装的Proj4例程定义的,这就是在安装gem时需要存在库的原因,不能稍后添加。