[R-sig-Geo] rgdal compile error on RHEL5 [SEC=UNCLASSIFIED]

Roger Bivand Roger.Bivand at nhh.no
Mon Sep 3 23:05:01 CEST 2012


On Mon, 13 Aug 2012, Andrew Harley wrote:

> Hi All,
>
> I'm getting an error when compiling the latest version of rgdal.
>
> It's saying unable to find GDALAllRegister in libgdal. We are running 
> gdal v1.8.0 from elgis repository. I noticed we had two versions of 
> gdal-config (one for 64 bit), but the error remains the same not matter 
> which one I use. Here are the ./configure options for our version of 
> gdal (from http://wiki.osgeo.org/wiki/Enterprise_Linux_GIS 
> <http://wiki.osgeo.org/wiki/Enterprise_Linux_GIS> ):
>
> ./configure --build=x86_64-redhat-linux-gnu 
> --host=x86_64-redhat-linux-gnu --target=x86_64-redhat-linux-gnu 
> --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin 
> --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share 
> --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec 
> --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man 
> --infodir=/usr/share/info --prefix=/usr --includedir=/usr/include/gdal/ 
> --datadir=/usr/share/gdal/ --with-threads=yes 
> --with-dods-root=/usr/lib64 --with-ogdi --with-cfitsio=/usr 
> --with-geotiff=external --with-tiff=external --with-libtiff=external 
> --with-libz --with-netcdf --with-hdf4 --with-hdf5 --with-geos 
> --with-jasper --with-png --with-gif --with-jpeg --with-odbc 
> --with-sqlite --with-mysql --with-curl --with-python --with-perl 
> --with-pcraster --with-ruby --with-java --with-xerces 
> --with-xerces-lib=-lxerces-c --with-xerces-inc=/usr/include 
> --with-jpeg12=no --enable-shared --with-gdal-ver=1.8.0 --with-! 
> spatialite=yes
>
> And here is the output of our install of rgdal. I've also tried pointing 
> it to the gdalconfig by using 
> --configure-args='--with-gdalconfig=/usr/bin/gdal-config', but the same 
> error occurs. Any help you guys can provide would be great!
>
> # R CMD INSTALL rgdal_0.7-12.tar.gz
> * installing to library '/usr/lib64/R/library'
> * installing *source* package 'rgdal' ...
> ** package 'rgdal' successfully unpacked and MD5 sums checked
> configure: gdal-config: gdal-config
> checking gdal-config usability... yes
> configure: GDAL: 1.8.0
> checking GDAL version > 1.5.4... yes
> checking for gcc... gcc -m64 -std=gnu99
> checking for C compiler default output file name... a.out
> checking whether the C compiler works... yes
> checking whether we are cross compiling... no
> checking for suffix of executables...
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc -m64 -std=gnu99 accepts -g... yes
> checking for gcc -m64 -std=gnu99 option to accept ANSI C... none needed
> checking how to run the C preprocessor... gcc -m64 -std=gnu99 -E
> checking for egrep... grep -E
> checking for ANSI C header files... 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... no
> checking gdal: linking with --libs and --dep-libs... no
> configure: error: GDALAllRegister not found in libgdal.
> ERROR: configuration failed for package 'rgdal'
> * removing '/usr/lib64/R/library/rgdal'
>
> gdal-config output:
>
> # gdal-config --libs -lgdal # gdal-config --dep-libs -L/usr/lib64 
> -lgeos_c -lodbc -lodbcinst -lexpat -lxerces-c -ljasper -lhdf5 
> -L/usr/lib64/hdf -L/usr/lib64/hdf -lmfhdf -ldf -logdi -lgif -ljpeg 
> -lgeotiff -ltiff -lpng -lnetcdf -lcfitsio -L/usr/lib64 -lpq -lz 
> -lpthread -lm -lrt -ldl -ldap -ldapclient -ldapserver -lpthread -lrx 
> -L/usr/kerberos/lib64 -lcurl -ldl -lgssapi_krb5 -lkrb5 -lk5crypto 
> -lcom_err -lidn -lssl -lcrypto -lz -lxml2 -lz -lm -lspatialite 
> -L/usr/kerberos/lib64 -lcurl -ldl -lgssapi_krb5 -lkrb5 -lk5crypto 
> -lcom_err -lidn -lssl -lcrypto -lz -rdynamic -L/usr/lib64/mysql 
> -lmysqlclient -lz -lcrypt -lnsl -lm -L/usr/lib64 -lssl -lcrypto

This is obviously a difficult case. I suggest unpacking the tarball, 
running R CMD INSTALL rgdal, and examining the contents of the rgdal 
directory, specifically the config.log, config.status and errors.txt 
files. The final file should record the compiler and linker error 
messages. It is likely that you have multiple installs of libgdal.so*, 
and/or that you have not run ldconfig after installing GDAL.

Hope this helps,

Roger

>
> Thanks,
>
> Andrew Harley
> Linux Systems Administrator
> Climate and Water Division (ICT Operations)
> Bureau of Meteorology, Australia
> 03 9616 8441
> http://www.bom.gov.au/water/
>
> _______________________________________________
> 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, NHH Norwegian School of Economics,
Helleveien 30, N-5045 Bergen, Norway.
voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: Roger.Bivand at nhh.no



More information about the R-sig-Geo mailing list