2014-05-23 4 views
2

지형 공간 데이터 작업에 익숙하지 않고 레일 RGeo gem으로 작업하고 있습니다. 내 레일 콘솔에서 다음과 같은 오류가 점점 오전 :RGeo : proj4가 지원되지 않습니다. 오류가 있습니까?

> 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이 지원되고 있는지 확인하기 위해 테스트가 예상 다시 false로 제공됩니다.

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

나는이 특별한 문제에 대한 리소스를 찾을 수 없다. 어떤 아이디어?

+0

RGeo gem을 설치할 때 Proj4 라이브러리를 설치 했습니까? 그렇다면 어떤 디렉토리입니까? –

+0

이 오류 메시지가 나타날 때까지 이것이 별개의 라이브러리로 존재한다는 것을 알지 못했습니다. 이게 당신이 의미하는 도서관인가요? http://trac.osgeo.org/proj/ – dmanaster

답변

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 uninstall rgeo을 제안하고 기본 디렉토리 중 하나에 Proj4을 설치 한 다음 gem install rgeo을 다시 설치합니다.

projected_factory 메서드의 맨 위에서받은 오류 메시지는 lib/rgeo/geographic/interface.rb입니다. RGeo::CoordSys::Proj4.supported?은 차례로 _create 메소드의 존재 여부를 찾습니다. 이것은 Proj4 라이브러리의 설치를 기반으로하는 C 루틴에 의해 정의됩니다. 이는 라이브러리 설치시 필요하며 나중에 추가 할 수 없기 때문입니다.

+2

[지금 보이는 몇 개의 다른 장소가 있습니다] (https://github.com/rgeo/rgeo/blob/master/ext/geos_c_impl/extconf.rb)/usr/lib64'. – tadman