2013-08-06 3 views
13

내 Mac에 Homebrew를 통해 Postgis와 Postgresql을 설치했으며, Postgis 버전을 2.1.0-rc2로 업그레이드하고 싶습니다. 나는 postgis의 나의 버전의 연결을 끊었고, postgis homebrew 공식을 편집했다. 새 수식이 컴파일되지 않은 후에 이전 수식을 다시 연결하고 공간 열이있는 데이터베이스 테이블을 호출 할 때마다 다음 오류가 발생합니다. 레일즈 Postgis 업그레이드 문제

PG::UndefinedFile: ERROR: could not load library 
"/usr/local/Cellar/postgresql/9.2.4/lib/postgis-2.0.so": 
dlopen(/usr/local/Cellar/postgresql/9.2.4/lib/postgis-2.0.so, 10): Symbol not found: 
_json_tokener_errors 
Referenced from: /usr/local/Cellar/postgresql/9.2.4/lib/postgis-2.0.so 
Expected in: /usr/local/lib/libjson.0.dylib 
in /usr/local/Cellar/postgresql/9.2.4/lib/postgis-2.0.so 

(I 전에 위의 작업을하고이 문제가되지 않았다) 내 PostgreSQL 서버를 재시작 한, 그것은 작동하지 않았다. 이 문제를 해결하기 위해 무엇을해야할지 확신이 서지 않습니다.

답변

20

아! homebrew가 링크 된 json-c의 이전 버전으로 되 돌리는 것으로이 문제를 해결했습니다. (특히 JSON-C 0.10) 다음과 같은 명령처럼 간단했다 : 다른

brew switch json-c 0.10 

희망의 사람이 앞으로이 유용 할 수있다.

+1

이렇게하지 않았습니까? 고마워요! –

+0

궁극적으로, 나는 여기에있는 pg_upgrade 명령어를 실행해야만했다 : http://blog.55minutes.com/2013/09/postgresql-93-brew-upgrade/ 문제점은'psql'을 실행했을 때 9.3 .1 그러나 서버는 여전히 9.2.4입니다. –

+0

굉장! Brew가 어떻게 든 내 json을 업그레이드하여 제 포스트 지 설치를 쓸모 없게 만들었습니다. 그래서 나는 업그레이드해야한다고 생각했지만, 결국은 실패했다. 궁극적으로이 오류와이 해결책으로 이어졌다. 휴, 살아남은 사람 :) – nathanvda