PostGIS 오류 :“/usr/lib/postgresql91/lib64/postgis-2.0.so”라이브러리를로드 할 수 없습니다


9

OS는 openSUSE 12.1, PostgreSQL-9.1, PostGIS-2.0입니다. Postgre / PostGIS는 Application : Geo 리포지토리에서 설치됩니다.

데이터베이스에 연결하려고 할 때 최근 업데이트 후 다음 오류가 발생합니다.

    ERROR:  could not load library "/usr/lib/postgresql91/lib64/postgis-2.0.so":
 /usr/lib/postgresql91/lib64/postgis-2.0.so: undefined symbol: pj_get_spheroid_defn

웹 에서이 오류 ( hint-1 , hint-2 )를 검색했으며 ld.so.config (또는 ldconfig 명령)와 관련이있는 것 같습니다. 그러나 나는 내 경우에 무엇을 해야하는지 알 수 없습니다.


2
최신 버전의 proj (> = 4.8)가 필요합니다. 무엇 proj --version및 / 또는 ldd `which proj`보여?
Mike T

@ MikeToews, 내 proj 버전은 4.7.1입니다. 업데이트해야 할 것 같습니다.
SS_Rebelious

나는 그들의 공식 사이트에서 proj 4.8을 설치했다. 그러나 여전히 proj --verion을 수행하면> Rel. 4.7.1, 23 September 20094.8로 업그레이드하는 방법 이 표시 됩니다. 나는 어떤 아이디어가 없다 : (나는 Ubuntu 12.4 Thanks Mo.
mmrs151을

답변:


6

MikeToews 덕분 에이 문제를 해결할 수있었습니다. openSUSE의 PostGIS 2.0은 libproj0버전 에 따라 다르며 버전은> 4.8 이상이어야합니다. 어떻게 든 패키지 관리자가 사용할 수있는 새 버전에 대해 libproj0알려주지 않았으므로 "버전"탭에서 Yast를 통해 새 버전을 수동으로 확인했습니다. 업데이트 후 데이터베이스를 정상적으로 작동시킬 수 있습니다.


이것은 사실이 아닙니다.
에반 캐롤

0

선택한 답변이 문제와 관련이 있다고 생각하지 않습니다.

어떻게 된 거예요

  1. Postgre / PostGIS는 Application : Geo 리포지토리에서 설치됩니다.
  2. OS가 열려 있습니다

가지고 있지 않은 proj 버전에 대해 빌드 된 새로운 PostGIS 버전을 설치했습니다. 귀하의 프로젝트는 OpenSUSE에서 제공 한 것 같습니다. Application : Geo 리포지토리 에서 proj 버전 또는 기본 OpenSUSE 리포지토리에서 PostGIS 버전을 설치해야 합니다. 이것은 종속성 클라이언트 불일치입니다. 문제가 지속되면 SUSE에 버그를 신고해야합니다.

PostGIS가 이전 버전의 proj에서는 작동하지 않습니다. 그것은 것을의 SUSE입니다 새 버전에 대해 PostGIS와 건물 하나를 필요로하므로.

PostGIS와 오래된 프로젝트

2 년 전에 제출 된 버그 보고서 에서

따라서 기본적으로 PostGIS는 이전 Proj4 버전에서도 작동 할 수 있지만 컴파일 타임에 알아야합니다.

그런 다음 watsonta의 바이너리가 Proj 4.8에 대해 빌드되었지만 이전 버전에 대해 실행 된 것처럼 보입니다. 바이너리 패키지의 버그 또는 그 의존성 (proj-4.8 이상 은 packager가 빌드 한 바이너리 postgis 의 의존성 임) 일 가능성이 큽니다.

나는 그것이 문제라고 생각합니다. 설치 한 것보다 최신 버전의 proj를 사용하여 빌드했습니다. 설치 한 agianst 버전으로 설치를 업그레이드하는 것은 문제를 해결하는 한 가지 방법 일뿐입니다.

여기에서 호출 된 함수 를 볼 수 있으며에 의해 보호됩니다 if.

#if POSTGIS_PROJ_VERSION >= 48

그래도 작동하지 않으면 다른 문제가있는 것입니다. 그것은 것 빌드 시스템에 의해 제공되는 A의 10 살 매크로


-1

mmrs151. Ubuntu 13.04에서 proj 버전 4.7에서 proj 4.8로 업그레이드 적어도 그것은 같은 문제를 해결하는 데 도움이되었습니다.

$ sudo apt-get 업그레이드 libproj-dev


답을 좀 더 자세히 설명해 주시겠습니까? OP의 문제를 어떻게 해결합니까?
Martin

2
이 답변은 쓸모가 없습니다-openSUSE는 apt를 사용하지 않습니다.
SS_Rebelious

대답은 mmrs151을위한 것입니다.
Amimo Benja
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.