[R-sig-Geo] Installing rgdal with gdal 2.0 on Mac using homebrew
Roger Bivand
Roger.Bivand at nhh.no
Mon Jul 18 14:08:41 CEST 2016
Sounds like an LDPATH issue, where the gdal 1 dylib is found before gdal 2.
Roger Bivand
Norwegian School of Economics
Bergen, Norway
On Mon, Jul 18, 2016 at 10:18 AM +0200, "Rainer M Krug" <Rainer at krugs.de<mailto:Rainer at krugs.de>> wrote:
Hi
I want to install rgdal for using gdal 2.0. The standard gdal package in
homebrew provides gdal 1.11.3, and gdal-20 is installed by using the
osgeo/osgeo4mac/gdal-20 formula, so gdal 2.1.0 is installed in
/usr/local/opt/gdal-20/
If I simply say
,----
| install.packages("rgdal, type="source")
`----
rgdal is installed without problems, but using gdal 1.11.3.
But I want to use gdal 2.1.0
The info from the gdal-20 formula says:
,----
| If you build your
| own software and it requires this formula, you'll need to add to your
| build variables:
|
| LDFLAGS: -L/usr/local/opt/gdal-20/lib
| CPPFLAGS: -I/usr/local/opt/gdal-20/include
`----
So I did the following to install rgdal:
,----
| > install.packages("rgdal", type = "source", configure.args = "--with-gdal-config=/usr/local/opt/gdal-20/bin/gdal-config;LDFLAGS=-L/usr/local/opt/gdal-20/lib;CPPFLAGS=-I/usr/local/opt/gdal-20/include")
| Installing package into /usr/local/lib/R/3.3/site-library
| (as lib is unspecified)
| trying URL 'https://cran.rstudio.com/src/contrib/rgdal_1.1-10.tar.gz'
| Content type 'application/x-gzip' length 1653393 bytes (1.6 MB)
| ==================================================
| downloaded 1.6 MB
|
| * installing *source* package rgdal ...
| ** package rgdal successfully unpacked and MD5 sums checked
| configure: CC: clang
| configure: CXX: clang++
| configure: rgdal: 1.1-10
| checking for /usr/bin/svnversion... yes
| configure: svn revision: 622
| configure: gdal-config set to /usr/local/opt/gdal-20/bin/gdal-config
| checking gdal-config exists... yes
| checking gdal-config executable... yes
| checking gdal-config usability... yes
| configure: GDAL: 2.1.0
| checking GDAL version >= 1.6.3... yes
| configure: experimental conditional use of GDAL2
| checking for gcc... clang
| 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 clang accepts -g... yes
| checking for clang option to accept ISO C89... none needed
| checking how to run the C preprocessor... clang -E
| checking for grep that handles long lines and -e... /usr/bin/grep
| checking for egrep... /usr/bin/grep -E
| checking for ANSI C header files...
| rm: conftest.dSYM: is a directory
| rm: conftest.dSYM: is a directory
| yes
| checking for sys/types.h... yes
| checking for sys/stat.h... yes
| checking for stdlib.h... yes
| checking for string.h... yes
| checking for memory.h... yes
| checking for strings.h... yes
| checking for inttypes.h... yes
| checking for stdint.h... yes
| checking for unistd.h... yes
| checking gdal.h usability... yes
| checking gdal.h presence... yes
| checking for gdal.h... yes
| checking gdal: linking with --libs only... yes
| checking GDAL: /usr/local/Cellar/gdal-20/2.1.0/share/gdal/pcs.csv readable... yes
| checking proj_api.h usability... yes
| checking proj_api.h presence... yes
| checking for proj_api.h... yes
| checking for pj_init_plus in -lproj... yes
| configure: PROJ.4 version: > 4.8.0
| checking PROJ.4: epsg found and readable... yes
| checking PROJ.4: conus found and readable... yes
| configure: Package CPP flags: -I/usr/local/Cellar/gdal-20/2.1.0/include
| configure: Package LIBS: -L/usr/local/Cellar/gdal-20/2.1.0/lib -lgdal -lproj
| configure: creating ./config.status
| config.status: creating src/Makevars
| ** libs
| clang++ -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c OGR_write.cpp -o OGR_write.o
| clang++ -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c gdal-bindings.cpp -o gdal-bindings.o
| clang -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c init.c -o init.o
| clang -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c inverser.c -o inverser.o
| clang -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c local_stubs.c -o local_stubs.o
| clang++ -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c ogr_geom.cpp -o ogr_geom.o
| clang -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c ogr_polygons.c -o ogr_polygons.o
| clang++ -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c ogr_proj.cpp -o ogr_proj.o
| clang++ -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c ogrdrivers.cpp -o ogrdrivers.o
| clang++ -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c ogrsource.cpp -o ogrsource.o
| clang++ -I/usr/local/Cellar/r/3.3.1/R.framework/Resources/include -DNDEBUG -I/usr/local/Cellar/gdal-20/2.1.0/include -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/openssl/include -I/usr/local/include -I"/usr/local/lib/R/3.3/site-library/sp/include" -fPIC -g -O2 -c projectit.cpp -o projectit.o
| clang++ -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/usr/local/opt/gettext/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/openssl/lib -L/usr/local/lib -L/usr/local/Cellar/r/3.3.1/R.framework/Resources/lib -L/usr/local/opt/gettext/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/openssl/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/usr/local/Cellar/gdal-20/2.1.0/lib -lgdal -lproj -F/usr/local/Cellar/r/3.3.1/R.framework/.. -framework R -lintl -Wl,-framework -Wl,CoreFoundation
| installing to /usr/local/lib/R/3.3/site-library/rgdal/libs
| ** R
| ** data
| ** inst
| ** preparing package for lazy loading
| ** help
| *** installing help indices
| ** building package indices
| ** installing vignettes
| ** testing if installed package can be loaded
| Error in dyn.load(file, DLLpath = DLLpath, ...) :
| unable to load shared object '/usr/local/lib/R/3.3/site-library/rgdal/libs/rgdal.so':
| dlopen(/usr/local/lib/R/3.3/site-library/rgdal/libs/rgdal.so, 6): Symbol not found: _GDALOpenEx
| Referenced from: /usr/local/lib/R/3.3/site-library/rgdal/libs/rgdal.so
| Expected in: flat namespace
| in /usr/local/lib/R/3.3/site-library/rgdal/libs/rgdal.so
| Error: loading failed
| Execution halted
| ERROR: loading failed
| * removing /usr/local/lib/R/3.3/site-library/rgdal
| * restoring previous /usr/local/lib/R/3.3/site-library/rgdal
| Warning in install.packages :
| installation of package rgdal had non-zero exit status
|
| The downloaded source packages are in
| /private/var/folders/50/wcr5bjwn75q595n6x82gxj280000gn/T/RtmpP8byD0/downloaded_packages
| >
`----
So it is using gdal 2.1.0 during compilation and installation.
My understanding is now (but I might be wrong), that everything works in the building step, but
when loading, it still tries to use the gdal 1.11.3 installation to run.
What am I missing here?
Thanks,
Rainer
--
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
Centre of Excellence for Invasion Biology
Stellenbosch University
South Africa
Tel : +33 - (0)9 53 10 27 44
Cell: +33 - (0)6 85 62 59 98
Fax : +33 - (0)9 58 10 27 44
Fax (D): +49 - (0)3 21 21 25 22 44
email: Rainer at krugs.de
Skype: RMkrug
PGP: 0x0F52F982
[[alternative HTML version deleted]]
More information about the R-sig-Geo
mailing list