2013-08-06 3 views
13

自分のMacにHomebrew経由でPostgisとPostgresqlをインストールしました。Postgisのバージョンを2.1.0-rc2にアップグレードしたいと考えました。私はpostgisの私のバージョンのリンクを解除し、postgis自作式を編集しました。新しい式がコンパイルされないと、古い式が再リンクされ、空間列を持つデータベーステーブルを呼び出そうとするたびに次のエラーが表示されるようになりました。Rails 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 

(私は前に上記のアクションを行うには、この問題を持っていなかった)、私は私のPostgreSQLサーバを再起動した、それは動作しませんでした。私はこの問題を解決するために何をすべきか分かりません。

答えて

20

Ah! 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をアップグレードし、私のpostgisインストールを役に立たなくしました。だから私はアップグレードしなければならなかった、と私は思ったが、それでも失敗し、最終的にこのエラーとこの解決につながった。 Phew、lifesaver :) – nathanvda

関連する問題