2013-08-06 24 views
13

Mac'imde Homgrew aracılığıyla Postgis ve Postgresql'i yükledim ve Postgis sürümümü 2.1.0-rc2'ye yükseltmek istedim. Postgis sürümümü kaldırdım ve postgis homebrew formülünü düzenledim. Yeni formülü derledikten sonra eski formülünü yeniden bağladım ve artık bir uzaysal sütunu olan bir veritabanı tablosunu çağırmaya çalıştığımda şu hatayı alıyorum: Raylar Postgis Yükseltme Sorunları

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 

(Ben önce yukarıdaki eylem yapmaya bu sorunu yaşıyor değildi) benim postgresql sunucusunu yeniden başladılar ve bu işe yaramadı. Bu sorunu çözmek için ne yapacağımdan emin değilim.

cevap

20

Ah! Homebrew'ın bağladığı json-c'nin eski bir versiyonuna geri dönerek sorunu düzeltildi. (Özellikle json-c 0.10) aşağıdaki komutu kadar basitti: Başka

brew switch json-c 0.10 

Umut birisi gelecekte bu yararlı bulabilirsiniz.

+1

Bunu yapmayı asla düşünmezdim. Çok teşekkür ederim! Burada bulduğumuz gibi –

+0

Sonuçta, ben pg_upgrade talimatları çalıştırmak zorunda: http://blog.55minutes.com/2013/09/postgresql-93-brew-upgrade/ sorun 9.3 koştum zaman 'psql' o oldu .1, ancak sunucu hala 9.2.4 idi. –

+0

Harika! Brew bir şekilde jsonumu geliştirdi, postgis kurulumumu işe yaramaz hale getirdi. Bu yüzden yükseltmek zorundaydım, diye düşündüm, ama bu bile başarısız oldu, sonuçta bu hataya ve bu çözüme yol açtı. Phew, cankurtaran :) – nathanvda