我正試圖爲GeoDjango安裝Spatialite!在OS X上爲python(GeoDjango)安裝Spatialite
我已經在使用自制軟件,它一般都很簡單方便,所以我最初試圖按照GeoDjango的Homebrew instructions。
但是,這並沒有安裝任何數據庫,即Spatialite。下一步是嘗試安裝Spatialite本身,但是沒有提供Django文檔的特定於Homebrew的說明。
我發現this tutorial看起來很完美 - GeoDjango的一個自制和virtualenv友好的Spatialite安裝。
但它不起作用......看起來我的pysqlite
與OS X附帶的SQLite的非空間啓用版本鏈接,而不是從Homebrew安裝的Spatial-ised版本,我得到Django嘗試連接到數據庫時發生此錯誤:
「pysqlite庫不支持C擴展加載。必須配置SQLite和pysqlite以允許加載擴展以使用SpatiaLite。」
pysqlite的作者沒有回覆my pleas for help on Github,我還沒有通過Google找到任何東西。
所以我回到繪圖板並決定在GeoDjango文檔中關注"Mac OS X-specific instructions" ...通過安裝KyngChaos二進制包中的各種地理庫。
文檔中提到「按照上面列出的順序安裝軟件包」,但是我發現我無法安裝UnixImageIO
而沒有先安裝PROJ
。文檔中下載Spatialite二進制文件(http://www.gaia-gis.it/spatialite-2.3.1/binaries.html)的鏈接已被破壞,因此我使用了KyngChaos的「Spatialite Tools v4.1」。
進行到下一步我得到這個錯誤:
$ spatialite geodjango.db "SELECT InitSpatialMetaData();"
SQLite header and source version mismatch
2013-10-17 12:57:35 c78be6d786c19073b3a6730dfe3fb1be54f5657a
2013-09-03 17:11:13 7dd4968f235d6e1ca9547cda9cf3bd570e1609ef
不是真的知道什麼是錯在這一點上。
有別人here on SO誰已經在KyngChaos路線,只是結束了與同「無論SQLite和pysqlite必須被配置爲允許擴展裝載」錯誤,我從家釀的路線了呢。
我發現this ticket #17756添加pyspatialite
支持的Django - pyspatialite
應該是pip install
一切更簡單的方法,但遺憾的是它不工作,要麼(見朝票的底部評論)。
我有點不願意開始嘗試從源代碼構建所有東西,因爲它似乎可能會再次遇到同樣的問題,但花費數小時搜索有關隱蔽編譯器錯誤,魔法標誌和路徑的信息等等。
我即將放棄使用Postgres/PostGIS。
謝謝,但你需要閱讀我的問題中的一切,我的問題比剛纔Django文檔(我已經完成)更復雜 – Anentropic
我錯過了什麼部分,對不起不完整的答案 – MZaragoza
我已經建立了pysqlite擴展支持啓用,但它似乎與我的SQLite的系統安裝,而不是我通過自制安裝的GIS啓用的SQLite鏈接...問題詳細在這裏https://github.com/ ghaering/pysqlite /問題/ 60 – Anentropic