我试图让rgdal直接从支持postgis的数据库中读取多边形数据,但事情并不顺利。我使用OSX 10.9.2和R 3.0.2,我从Kyngchaos安装了完整的GDAL 1.10.1框架。具体来说:http://www.gdal.org/ogr/drv_pg.html是我想要的驱动程序。我已经证实了这一点
/Library/Frameworks/GDAL.framework/Versions/Current/Libraries/libpq.dylib
存在 - 我目前理解这是我需要的驱动程序。
rgdal包使用以下命令从源代码编译安装的gdal框架:
sudo R CMD install rgdal_0.8-16.tar.gz --configure-args='--with-gdal-config=/Library/Frameworks/GDAL.framework/unix/bin/gdal-config --with-proj-include=/Library/Frameworks/PROJ.framework/unix/include --with-proj-lib=/Library/Frameworks/PROJ.framework/unix/lib'
成功完成。加载rgdal没有问题,但postgres驱动程序拒绝出现:
> ogrDrivers()
name write
1 AeronavFAA FALSE
2 ARCGEN FALSE
3 AVCBin FALSE
4 AVCE00 FALSE
5 BNA TRUE
6 CouchDB TRUE
7 CSV TRUE
8 DGN TRUE
9 DXF TRUE
10 EDIGEO FALSE
11 ElasticSearch TRUE
12 ESRI Shapefile TRUE
13 Geoconcept TRUE
14 GeoJSON TRUE
15 GeoRSS TRUE
16 GFT TRUE
17 GML TRUE
18 GMT TRUE
19 GPSBabel TRUE
20 GPSTrackMaker TRUE
21 GPX TRUE
22 HTF FALSE
23 Idrisi FALSE
24 KML TRUE
25 MapInfo File TRUE
26 Memory TRUE
27 ODS TRUE
28 OpenAir FALSE
29 OSM FALSE
30 PCIDSK TRUE
31 PDF TRUE
32 PDS FALSE
33 PGDump TRUE
34 REC FALSE
35 S57 TRUE
36 SDTS FALSE
37 SEGUKOOA FALSE
38 SEGY FALSE
39 SQLite TRUE
40 SUA FALSE
41 SVG FALSE
42 TIGER TRUE
43 UK .NTF FALSE
44 VFK FALSE
45 VRT FALSE
46 WFS FALSE
47 XLS FALSE
48 XLSX TRUE
49 XPlane FALSE
我错过了一些明显的东西吗?
(编辑:请注意,ogrinfo "PG:[conneciton string here]"
完美无缺,因此驱动程序肯定正在运行)
答案 0 :(得分:4)
对不起自我回答,但我已经解决了。
忘记从CRAN repos获得的rgdal包,它包含自己的基本gdal,它没有必要的驱动程序。我仍然不明白为什么从源代码编译不起作用,但无论你能得到一个rgdal的副本,它可以起作用: