[R-sig-Geo] rgdal: Cannot open data source
Roger Bivand
Roger.Bivand at nhh.no
Thu Jul 16 11:55:30 CEST 2015
Do you have other versions of GDAL on the system, and was rgdal 1.0-4
installed against GDAL 2.0.0? I believe that the package should check that
the GDAL runtime is the same as the one used to install rgdal, but the
check may not be robust. I am away until mid-August, and cannot help with
FreeBSD anyway. Does setwd() to the dsn of the shapefile help , then
dsn=":"? Does
ogrInfo("/home/rhurlin/SpatialData/world/TM_WORLD_BORDERS-0.3.shp",
"TM_WORLD_BORDERS-0.3")
help?
Is the shapefile in that folder? Do other drivers work? Does
example(readOGR) work?
Roger
On Thu, 16 Jul 2015, Rainer Hurling wrote:
> I am using GDAL 2.0.0 on FreeBSD and having trouble to get rgdal-1.0-4 work
> correctly.
>
> (1) The error looks like this:
>
> ogrInfo("/home/rhurlin/SpatialData/world", "TM_WORLD_BORDERS-0.3")
> Fehler in ogrInfo("/home/rhurlin/SpatialData/world", "TM_WORLD_BORDERS-0.3")
> :
> Cannot open data source
>
>
> Obviously, rgdal does not find the path and/or files, given as parameters to
> functions like ogrInfo(). This problem also exists with similar rgdal tools
> like for example ogrListLayers:
>
> ogrListLayers("/home/rhurlin/SpatialData/world")
> Fehler in ogrListLayers("/home/rhurlin/SpatialData/world") :
> Cannot open data source
>
>
> (2) The library rgdal loads fine so far:
>
> library(rgdal)
> Lade nötiges Paket: sp
> rgdal: version: 1.0-4, (SVN revision 548)
> Geospatial Data Abstraction Library extensions to R successfully loaded
> Loaded GDAL runtime: GDAL 2.0.0, released 2015/06/14
> Path to GDAL shared files: /usr/local/share/gdal
> Loaded PROJ.4 runtime: Rel. 4.9.1, 04 March 2015, [PJ_VERSION: 491]
> Path to PROJ.4 shared files: (autodetected)
> Linking to sp version: 1.1-1
>
>
> (3) On the shell, outside of R, gdal 2.0.0 gives the expected output:
>
> ogrinfo -so "/home/rhurlin/SpatialData/world" "TM_WORLD_BORDERS-0.3"
> INFO: Open of `/home/rhurlin/SpatialData/world'
> using driver `ESRI Shapefile' successful.
>
> Layer name: TM_WORLD_BORDERS-0.3
> Metadata:
> DBF_DATE_LAST_UPDATE=2008-07-30
> Geometry: Polygon
> Feature Count: 246
> Extent: (-180.000000, -90.000000) - (180.000000, 83.623596)
> Layer SRS WKT:
> GEOGCS["GCS_WGS_1984",
> DATUM["WGS_1984",
> SPHEROID["WGS_84",6378137.0,298.257223563]],
> PRIMEM["Greenwich",0.0],
> UNIT["Degree",0.0174532925199433]]
> FIPS: String (2.0)
> ISO2: String (2.0)
> ISO3: String (3.0)
> UN: Integer (3.0)
> NAME: String (50.0)
> AREA: Integer (7.0)
> POP2005: Integer64 (10.0)
> REGION: Integer (3.0)
> SUBREGION: Integer (3.0)
> LON: Real (8.3)
> LAT: Real (7.3)
>
> This leads me to the assumption, that the new rgdal-1.0_4 has some problem
> with path and/or file strings, at least on FreeBSD and at least for GDAL
> 2.0.0.
>
>
> (4) I tried to get some insight with gdb, but my skills are far to small to
> get deeper. What I did:
>
> - Run R with 'R -d gdb791'
> - Load library(rgdal) within R
> - Set 'bt ogrInfo' in gdb for src/ogrsource.cpp:l46
> - Continue R, run the following command:
>
>
> ogrInfo("/home/rhurlin/SpatialData/world", "TM_WORLD_BORDERS-0.3")
>
> Breakpoint 1, ogrInfo (ogrsourcename=0x4b8cf458, Layer=0x4b8cf428) at
> ogrsource.cpp:46
> 46 int nFIDs, nFields, iField, *nCount, pc=0;
> (gdb) n
> 60 installErrorHandler();
> (gdb) n
> 62 poDS=(GDALDataset*) GDALOpenEx(CHAR(STRING_ELT(ogrsourcename,
> 0)), GDAL_OF_VECTOR, NULL, NULL, NULL);
> (gdb) n
> 63 if(poDS==NULL){
> (gdb) bt
> #0 ogrInfo (ogrsourcename=0x4b8cf458, Layer=0x4b8cf428) at ogrsource.cpp:63
> #1 0x0000000040adf576 in R_doDotCall (ofun=0x4bc14201 <ogrInfo(SEXP, SEXP)>,
> nargs=2,
> cargs=0x7fffffffc5e0, call=0x4aae9f78) at dotcode.c:573
> #2 0x0000000040aed4a2 in do_dotcall (call=0x4aae9f78, op=0x46ceeb50,
> args=0x4ab53468, env=0x4ab400b0)
> at dotcode.c:1251
> #3 0x0000000040b291c1 in Rf_eval (e=0x4aae9f78, rho=0x4ab400b0) at
> eval.c:655
> #4 0x0000000040b2dab3 in do_set (call=0x4aae6190, op=0x46cd71c8,
> args=0x4aae88b0, rho=0x4ab400b0)
> at eval.c:2106
> #5 0x0000000040b28f71 in Rf_eval (e=0x4aae6190, rho=0x4ab400b0) at
> eval.c:627
> #6 0x0000000040b2c9a0 in do_begin (call=0x4aae00b0, op=0x46cd8778,
> args=0x4aae61c8, rho=0x4ab400b0)
> at eval.c:1716
> #7 0x0000000040b28f71 in Rf_eval (e=0x4aae00b0, rho=0x4ab400b0) at
> eval.c:627
> #8 0x0000000040b2a256 in Rf_applyClosure (call=0x4aadc1c8, op=0x4aade238,
> arglist=0x4ab40318,
> rho=0x46f0a708, suppliedvars=0x46cd4f78) at eval.c:1039
> #9 0x0000000040b29304 in Rf_eval (e=0x4aadc1c8, rho=0x46f0a708) at
> eval.c:674
> #10 0x0000000040b6ad2c in Rf_ReplIteration (rho=0x46f0a708, savestack=0,
> browselevel=0,
> state=0x7fffffffd580) at main.c:258
> #11 0x0000000040b6aef0 in R_ReplConsole (rho=0x46f0a708, savestack=0,
> browselevel=0) at main.c:308
> #12 0x0000000040b6c682 in run_Rmainloop () at main.c:1009
> #13 0x0000000040b6c697 in Rf_mainloop () at main.c:1016
> #14 0x0000000000400a5c in main (ac=1, av=0x7fffffffe658) at Rmain.c:29
> (gdb) n
> 64 uninstallErrorHandlerAndTriggerError();
> (gdb)
> 65 error("Cannot open data source");
> (gdb) n
> Fehler in ogrInfo("/home/rhurlin/SpatialData/world", "TM_WORLD_BORDERS-0.3")
> :
> Cannot open data source
> run_Rmainloop () at main.c:1008
> 1008 R_GlobalContext = R_ToplevelContext = R_SessionContext =
> &R_Toplevel;
> (gdb) n
> 1009 R_ReplConsole(R_GlobalEnv, 0, 0);
>
>
> Hope, my analysis it ok so far. From here on, I am lost and could really need
> some help. Please ask me, if you need more information or if I should try
> something.
>
> Many thanks in advance.
> Regards,
> Rainer Hurling
>
>
> sessionInfo()
> R Under development (unstable) (2015-07-14 r68652)
> Platform: amd64-portbld-freebsd11.0 (64-bit)
> Running under: FreeBSD xxx.xxx.xxx 11.0-CURRENT FreeBSD 11.0-CURRENT #0
> r285383: Sat Jul 11 10:39:33 CEST 2015
> xxx at xxx.xxx.xxx:/usr/obj/usr/src/sys/XXX amd64
> locale:
> [1] C/de_DE.UTF-8/de_DE.UTF-8/C/de_DE.UTF-8/de_DE.UTF-8
> attached base packages:
> [1] stats graphics grDevices utils datasets methods base
> other attached packages:
> [1] rgdal_1.0-4 sp_1.1-1
> loaded via a namespace (and not attached):
> [1] grid_3.3.0 lattice_0.20-33
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>
--
Roger Bivand
Department of Economics, Norwegian School of Economics,
Helleveien 30, N-5045 Bergen, Norway.
voice: +47 55 95 93 55; fax +47 55 95 91 00
e-mail: Roger.Bivand at nhh.no
More information about the R-sig-Geo
mailing list