proj.5 contains new features, but none of these are, or will in the near future be available to R users. All our (= Roger + me) efforts so far have been to get software (rgdal, sf) running with proj.5, not to expose any of its new features. See also https://github.com/r-spatial/sf/issues/545
Also: if anyone insists on installing rgdal or sf from source on a Mac but doesn't use the setup CRAN uses for building binaries, neither Roger nor I can assist in case of problems beyond wildly guessing. Of course, any help from anyone else on these kind of issues is highly appreciated. On 06/12/2018 04:41 PM, Vijay Lulla wrote: > Thank you for the explanation of difference between proj.h and proj_api.h > and the recommendation of setting environment variable for pkg-config. I > had tried using pkg-config by setting env variables but haven't had much > luck getting it to work. > Cordially, > Vijay. > > On Tue, Jun 12, 2018 at 3:11 AM, Roger Bivand <roger.biv...@nhh.no> wrote: > >> On Tue, 12 Jun 2018, Vijay Lulla wrote: >> >> I too use R on a mac but I cannot get rgdal to use proj5 (port info proj). >>> rgdal still uses proj4 even when there is a newer version of proj already >>> on my computer. Neither of these proj packages (proj4 or proj) use >>> pkg-config mechanism even though there are proj.pc files in both versions >>> of the package. Maybe using the pkg-config mechanism to detect version of >>> packages during source installation might help? I don't know whether this >>> is a "proj" or a "macports" issue though. >>> >>> >> Neither sp/rgdal nor sf plan to accomodate the proj.h interface until the >> GDAL barn-raising project is completed. Even then, most software using proj >> will have to support the proj_api.h and the proj.h APIs because many >> platforms are bound to move at the speed of the slowest package using proj. >> The proj_api.h API does use the new mechanisms internally, but it isn't >> obvious how or whether proj.h pipelines should be exposed (GRASS has a >> prototype implementation). >> >> If you work in geodetics and need sub-cm precision, this may matter; in >> which case please follow the GDAL barn-raising project and provide use >> cases where the proj.h API is required. The main difference is that the >> proj_api.h API always transforms to the WGS84 datum first then transforms >> to the target datum (many to one then one to many). When this was chosen >> 1984 was not so long ago; the new proj.h API suggests transforming along a >> pipeline from source to target datum without going through WGS84 (many to >> many). >> >> If your question is about how to install rgdal from source on OSX, you may >> need to ensure that you only have one version of proj installed, or use >> configure arguments and load path modifications on your own responsibility. >> >> From rgdal 1.3-1, the pkg-config mechanism is used if the path to proj.pc >> is set correctly (environment variable), but will fall back on standard >> locations if pkg-config proj fails. >> >> Roger >> >> >> >>> On Mon, Jun 11, 2018 at 7:54 PM, Thiago V. dos Santos via R-sig-Geo < >>> r-sig-geo@r-project.org> wrote: >>> >>> Hi Roger, thanks for the follow up. Answering to your comments: >>>> >>>> a) I am using Macports's gdal version 2.3.0.20180523. I am pretty sure >>>> that its source code (i.e. the one that is compiled on my machine) is >>>> downloaded from OSGEO (at least according to https://github.com/ >>>> macports/macports-ports/blob/master/gis/gdal/Portfile); >>>> >>>> b) I do have more than one libproj installed on my system (as QGIS for >>>> macOS requires its own gdal and proj stuff), but only the Macports one is >>>> on my path; >>>> >>>> >>>> c) I tried running: >>>> tools::testInstalledPackage("rgdal", outDir=tempdir())list.files( >>>> tempdir())file.show(file.path(tempdir(), "rgdal-Ex.Rout")) >>>> >>>> but it unexpectedly returned "Error in library("rgdal") : there is no >>>> package called ‘rgdal’. Execution halted". >>>> >>>> It looks weird but so far I am able to normally load and use at least a >>>> couple of rgdal's functions. >>>> >>>> I will keep monitoring it though, and report any other issue. >>>> >>>> Cheers, >>>> -- Thiago V. dos Santos >>>> Postdoctoral Research FellowDepartment of Climate and Space Science and >>>> EngineeringUniversity of Michigan >>>> >>>> On Sunday, June 10, 2018, 4:46:04 AM EDT, Roger Bivand < >>>> roger.biv...@nhh.no> wrote: >>>> >>>> Thanks for reporting, comments inline below (note that I have no OSX >>>> access at all): >>>> >>>> On Sat, 9 Jun 2018, Thiago V. dos Santos wrote: >>>> >>>> Dear Roger, >>>>> Thank you very much for the excellent work done with those packages. >>>>> Today I update both rgeos and rgdal on my system - macOS 10.13.5 with >>>>> all dependencies installed via MacPorts. I had updated sp a few days >>>>> earlier. The dependencies versions on my system are gdal >>>>> @2.3.0.20180523_0+grib+hdf4+hdf5+jasper+mpich+netcdf and proj @5.1.0_0. >>>>> Rgeos's update went flawlessly, but I got a few errors while updating >>>>> rgdal. It still compiled successfully, but I am concerned that some >>>>> functionality might be compromised due to the errors. >>>>> This is what I got (I have to manually specify the location of proj or >>>>> rgdal won't find it):> install.packages('rgdal', type = "source", >>>>> configure.args=c( >>>>> + '--with-proj-include=/opt/local/lib/proj5/include', >>>>> + '--with-proj-lib=/opt/local/lib/proj5/lib')) >>>>> Installing package into ‘/Users/thiago/Documents/R-packages’ >>>>> (as ‘lib’ is unspecified) >>>>> trying URL 'https://cran.r-project.org/src/contrib/rgdal_1.3-2.tar.gz' >>>>> Content type 'application/x-gzip' length 1667049 bytes (1.6 MB) >>>>> ================================================== >>>>> downloaded 1.6 MB >>>>> >>>>> * installing *source* package ‘rgdal’ ... >>>>> ** package ‘rgdal’ successfully unpacked and MD5 sums checked >>>>> configure: CC: /usr/bin/clang >>>>> configure: CXX: /usr/bin/clang++ >>>>> configure: rgdal: 1.3-2 >>>>> checking for /usr/bin/svnversion... yes >>>>> configure: svn revision: 755 >>>>> checking whether the C++ compiler works... yes >>>>> checking for C++ compiler default output file name... a.out >>>>> checking for suffix of executables... >>>>> checking whether we are cross compiling... no >>>>> checking for suffix of object files... o >>>>> checking whether we are using the GNU C++ compiler... yes >>>>> checking whether /usr/bin/clang++ accepts -g... yes >>>>> checking whether /usr/bin/clang++ supports C++11 features by default... >>>>> >>>> no >>>> >>>>> checking whether /usr/bin/clang++ supports C++11 features with >>>>> >>>> -std=gnu++11... yes >>>> >>>>> configure: C++11 support available >>>>> checking for gdal-config... /opt/local/bin/gdal-config >>>>> checking gdal-config usability... yes >>>>> configure: GDAL: 2.4.0 >>>>> >>>> >>>> All OK up to the GDAL version returned by gdal-config - are you using the >>>> released GDAL 2.3.0 (probably not) or master? >>>> >>>> checking C++11 support for GDAL >= 2.3.0... yes >>>>> checking GDAL version >= 1.11.4... yes >>>>> checking gdal: linking with --libs only... yes >>>>> checking GDAL: /opt/local/share/gdal/pcs.csv readable... yes >>>>> checking proj_api.h presence and usability... yes >>>>> ./configure: line 3395: test: =: unary operator expected >>>>> >>>> >>>> Will check, that line is: >>>> >>>> if test ${PROJ_VERSION} = "" ; then >>>> >>>> from configure.ac line 305. Possibly a shell dialect issue. >>>> >>>> checking PROJ version >= 4.8.0... yes >>>>> checking projects.h presence and usability... yes >>>>> >>>> >>>> These relate to configure.ac lines 376-419, and the outcome: epsg found >>>> and readable is OK - could there be two libproj on your system (maybe for >>>> different architectures)? >>>> >>>> Undefined symbols for architecture x86_64: >>>>> "_pj_ctx_fclose", referenced from: >>>>> _main in proj_conf_test2-06fe7d.o >>>>> "_pj_get_default_ctx", referenced from: >>>>> _main in proj_conf_test2-06fe7d.o >>>>> "_pj_open_lib", referenced from: >>>>> _main in proj_conf_test2-06fe7d.o >>>>> ld: symbol(s) not found for architecture x86_64 >>>>> clang: error: linker command failed with exit code 1 (use -v to see >>>>> >>>> invocation) >>>> >>>>> ./configure: line 3511: ./proj_conf_test2: No such file or directory >>>>> checking PROJ.4: epsg found and readable... yes >>>>> >>>> >>>> Same here for next block in configure.ac; conus found and readable. >>>> >>>> Undefined symbols for architecture x86_64: >>>>> "_pj_ctx_fclose", referenced from: >>>>> _main in proj_conf_test3-3b7aa2.o >>>>> "_pj_get_default_ctx", referenced from: >>>>> _main in proj_conf_test3-3b7aa2.o >>>>> "_pj_open_lib", referenced from: >>>>> _main in proj_conf_test3-3b7aa2.o >>>>> ld: symbol(s) not found for architecture x86_64 >>>>> clang: error: linker command failed with exit code 1 (use -v to see >>>>> >>>> invocation) >>>> >>>>> ./configure: line 3570: ./proj_conf_test3: No such file or directory >>>>> checking PROJ.4: conus found and readable... yes >>>>> configure: Package CPP flags: -I/opt/local/include >>>>> >>>> -I/opt/local/lib/proj5/include >>>> >>>>> configure: Package LIBS: -L/opt/local/lib -lgdal >>>>> >>>> -L/opt/local/lib/proj5/lib -lproj >>>> >>>>> configure: creating ./config.status >>>>> config.status: creating src/Makevars >>>>> ** libs >>>>> clang++ -std=gnu++11 -I"/Library/Frameworks/R.frame >>>>> work/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c OGR_write.cpp -o OGR_write.o >>>> >>>>> clang++ -std=gnu++11 -I"/Library/Frameworks/R.frame >>>>> work/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c gdal-bindings.cpp -o gdal-bindings.o >>>> >>>>> /usr/bin/clang -I"/Library/Frameworks/R.framework/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c init.c -o init.o >>>> >>>>> /usr/bin/clang -I"/Library/Frameworks/R.framework/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c inverser.c -o inverser.o >>>> >>>>> /usr/bin/clang -I"/Library/Frameworks/R.framework/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c local_stubs.c -o local_stubs.o >>>> >>>>> clang++ -std=gnu++11 -I"/Library/Frameworks/R.frame >>>>> work/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c ogr_geom.cpp -o ogr_geom.o >>>> >>>>> /usr/bin/clang -I"/Library/Frameworks/R.framework/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c ogr_polygons.c -o ogr_polygons.o >>>> >>>>> clang++ -std=gnu++11 -I"/Library/Frameworks/R.frame >>>>> work/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c ogr_proj.cpp -o ogr_proj.o >>>> >>>>> clang++ -std=gnu++11 -I"/Library/Frameworks/R.frame >>>>> work/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c ogrdrivers.cpp -o ogrdrivers.o >>>> >>>>> clang++ -std=gnu++11 -I"/Library/Frameworks/R.frame >>>>> work/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c ogrsource.cpp -o ogrsource.o >>>> >>>>> clang++ -std=gnu++11 -I"/Library/Frameworks/R.frame >>>>> work/Resources/include" >>>>> >>>> -DNDEBUG -I/opt/local/include -I/opt/local/lib/proj5/include >>>> -I"/Users/thiago/Documents/R-packages/sp/include" -I/usr/local/include >>>> -fPIC -Wall -g -O2 -c projectit.cpp -o projectit.o >>>> >>>>> clang++ -std=gnu++11 -dynamiclib -Wl,-headerpad_max_install_names >>>>> >>>> -undefined dynamic_lookup -single_module -multiply_defined suppress >>>> -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -o >>>> rgdal.so OGR_write.o gdal-bindings.o init.o inverser.o local_stubs.o >>>> ogr_geom.o ogr_polygons.o ogr_proj.o ogrdrivers.o ogrsource.o projectit.o >>>> -L/opt/local/lib -lgdal -L/opt/local/lib/proj5/lib -lproj >>>> -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework >>>> -Wl,CoreFoundation >>>> >>>>> installing to /Users/thiago/Documents/R-packages/rgdal/libs >>>>> ** R >>>>> ** data >>>>> ** inst >>>>> ** byte-compile and prepare package for lazy loading >>>>> ** help >>>>> *** installing help indices >>>>> ** building package indices >>>>> ** installing vignettes >>>>> ** testing if installed package can be loaded >>>>> * DONE (rgdal) >>>>> >>>>> The downloaded source packages are in >>>>> >>>>> ‘/private/var/folders/_z/01gg71zs19g816v6m2dddt8w0000gn >>>>> >>>> /T/Rtmp5K6lt8/downloaded_packages’ >>>> >>>>> Is this something that needs to be investigated, or I can just safely >>>>> ignore those messages? >>>>> >>>> >>>> Please try to run: >>>> >>>> tools::testInstalledPackage("rgdal", outDir=tempdir()) >>>> list.files(tempdir()) >>>> file.show(file.path(tempdir(), "rgdal-Ex.Rout")) >>>> >>>> and if the outcomes are as expected, you should be OK, please let us >>>> know. >>>> >>>> If any OSX users installing from source can contribute, that would be >>>> useful. It will take a little while before the CRAN OSX binaries catch up >>>> with new PROJ and GDAL. >>>> >>>> Again thanks for reporting! >>>> >>>> Roger >>>> >>>> Many thanks, -- Thiago V. dos Santos >>>>> Postdoctoral Research FellowDepartment of Climate and Space Science and >>>>> >>>> EngineeringUniversity of Michigan >>>> >>>>> >>>>> On Friday, June 8, 2018, 2:15:43 PM EDT, Roger Bivand < >>>>> >>>> roger.biv...@nhh.no> wrote: >>>> >>>>> >>>>> There are new releases of sp, rgdal and rgeos on CRAN. Please install sp >>>>> first, then the other two, which link to the installed sp. They all >>>>> address so-called rchk issues, which have not so far been a problem, but >>>>> might have become more fragile as R's internal memory management is made >>>>> even more efficient. This involves compiled code using memory allocated >>>>> >>>> by >>>> >>>>> R to be freed by R's garbage collector, which has to know if an object >>>>> is >>>>> still being used. Tomas Kalibera, the author of rchk, helped resolve and >>>>> explain the issues encountered - what was good coding practice fifteen >>>>> years ago isn't always still good practice. >>>>> >>>>> In addition, the earliest versions of GDAL and PROJ with which rgdal >>>>> will >>>>> work have been updated, and set to PROJ 4.8.0 and GDAL 1.11.4. The >>>>> >>>> current >>>> >>>>> released versions of PROJ and GDAL are to be prefered, as bugs have been >>>>> fixed and new features and drivers introduced. A check has been put >>>>> in place to trap attempts to install rgdal without a C++11-capable >>>>> compiler when the GDAL version is >=2.3.0 - which requires C++11. rgeos >>>>> >>>> is >>>> >>>>> ready for the forthcoming version of GEOS. >>>>> >>>>> The CRAN team has also been very supportive of our efforts to bring >>>>> compiled code in these packages into rchk compliance. >>>>> >>>>> Please get in touch if you see any loose ends in these releases. >>>>> >>>>> Roger >>>>> >>>>> >>>>> >>>> -- >>>> Roger Bivand >>>> Department of Economics, Norwegian School of Economics, >>>> Helleveien 30, N-5045 Bergen, Norway. >>>> voice: +47 55 95 93 55; e-mail: roger.biv...@nhh.no >>>> http://orcid.org/0000-0003-2392-6140 >>>> https://scholar.google.no/citations?user=AWeghB0AAAAJ&hl=en >>>> [[alternative HTML version deleted]] >>>> >>>> _______________________________________________ >>>> R-sig-Geo mailing list >>>> R-sig-Geo@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; e-mail: roger.biv...@nhh.no >> http://orcid.org/0000-0003-2392-6140 >> https://scholar.google.no/citations?user=AWeghB0AAAAJ&hl=en >> > > > -- Edzer Pebesma Institute for Geoinformatics Heisenbergstrasse 2, 48151 Muenster, Germany Phone: +49 251 8333081 _______________________________________________ R-sig-Geo mailing list R-sig-Geo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-geo