[R-sig-Geo] Issues installing rgeos on linux server

Roger Bivand Roger.Bivand at nhh.no
Tue Jun 20 11:26:35 CEST 2017


On Tue, 20 Jun 2017, Matthew Simpson wrote:

> I'm installing some spatial packages on a linux server and due to
> university constraints, cannot install anything using a package manager.
> I've managed to get rgdal installed successfully, but rgeos is causing
> problems.
>
> I've installed the geos library already, but when I attempt to install
> rgeos within R, it complains that that it cannot run C compiled programs.

Could you please say how you installed GEOS? Could you try out geos-config 
with each of the settings? Do you need 3.7.0dev (I haven't tried this as a 
source of difficulty as it seems implausible, but neither rgeos nor sf 
need bleeding edge functionality from GEOS)? Could you try to install sf 
from source (it also uses GEOS)? Is this the GEOS geos-config -m library 
bug (probably not)? Unpacking rgeos, running ./configure in the package 
root, I see (Fedora 25, R 3.4.0):

$ ./configure
configure: CC: gcc
configure: CXX: g++
configure: rgeos: 0.3-23
checking for /usr/bin/svnversion... yes
configure: svn revision: 547
checking for geos-config... /usr/local/bin/geos-config
checking geos-config usability... yes
configure: GEOS version: 3.6.1
checking geos version at least 3.2.0... yes
checking geos-config clibs... yes
checking for gcc... gcc
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 gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -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... 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 geos_c.h usability... yes
checking geos_c.h presence... yes
checking for geos_c.h... yes
checking geos: linking with libgeos_c... yes
configure: PKG_CPPFLAGS:  -I/usr/local/include
configure: PKG_LIBS:  -L/usr/local/lib -lgeos -L/usr/local/lib -lgeos_c
configure: creating ./config.status
config.status: creating src/Makevars

but you fail about half-way down at the standard croos-compilation test. 
For rgdal/configure - you said your rgdal install on the same system 
succeeded, I see:

...
checking for gcc... gcc
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 gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
...

What do you see (just running ./configure in the package root)?

Roger

>
> I've also tried downloading the tarball myself and running R CMD check, and
> it gives me the same complaint.
>
> I've successfully reinstalled Rcpp from source, but that seemed to do
> nothing.
>
> Below is: 1) the console input from the attempted installation, 2) shell
> output from running R CMD check, and 3) my sessionInfo()
>
> Any help would be appreciated.
>
> Matt
>
> 1) Here is the result of attempted installation: (note: removing type =
> "source" changes nothing):
>
>> install.packages("rgeos", type = "source",
> +         configure.args =
> "--with-geos-config=/group/stsn/shared_libs/geos/bin/geos-config",
> +         repos = "https://cloud.r-project.org")
> Installing package into ‘/home/msimpson/R/x86_64-pc-linux-gnu-library/3.3’
> (as ‘lib’ is unspecified)
> trying URL 'https://cloud.r-project.org/src/contrib/rgeos_0.3-23.tar.gz'
> Content type 'application/x-gzip' length 257486 bytes (251 KB)
> ==================================================
> downloaded 251 KB
>
> * installing *source* package ‘rgeos’ ...
> ** package ‘rgeos’ successfully unpacked and MD5 sums checked
> configure: CC: /usr/bin/gcc -std=gnu99
> configure: CXX: /usr/bin/g++
> configure: rgeos: 0.3-23
> checking for /usr/bin/svnversion... no
> configure: svn revision: 546
> configure: geos-config set to /group/stsn/shared_libs/geos/bin/geos-config
> checking geos-config exists... yes
> checking geos-config executable... yes
> checking geos-config usability... yes
> configure: GEOS version: 3.7.0dev
> checking geos version at least 3.2.0... yes
> checking geos-config clibs... yes
> checking for gcc... /usr/bin/gcc -std=gnu99
> 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... configure: error: in
> `/tmp/RtmppP5J2b/R.INSTALL236bb22fea27c/rgeos':
> configure: error: cannot run C compiled programs.
> If you meant to cross compile, use `--host'.
> See `config.log' for more details
> ERROR: configuration failed for package ‘rgeos’
> * removing ‘/home/msimpson/R/x86_64-pc-linux-gnu-library/3.3/rgeos’
>
> The downloaded source packages are in
>        ‘/tmp/RtmpwkU04N/downloaded_packages’
> Warning message:
> In install.packages("rgeos", type = "source", configure.args =
> "--with-geos-config=/group/stsn/shared_libs/geos/bin/geos-config",  :
>  installation of package ‘rgeos’ had non-zero exit status
>
> 2) Here's the result from running R CMD check:
>
> R CMD check
> --install-args='--configure-args=--with-geos-config=/group/stsn/shared_libs/geos/bin/geos-config'
> rgeos_0.3-23.tar.gz
> * using log directory ‘/group/stsn/src/test/rgeos.Rcheck’
> * using R version 3.3.1 (2016-06-21)
> * using platform: x86_64-pc-linux-gnu (64-bit)
> * using session charset: UTF-8
> * checking for file ‘rgeos/DESCRIPTION’ ... OK
> * this is package ‘rgeos’ version ‘0.3-23’
> * checking package namespace information ... OK
> * checking package dependencies ... OK
> * checking if this is a source package ... OK
> * checking if there is a namespace ... OK
> * checking for executable files ... OK
> * checking for hidden files and directories ... OK
> * checking for portable file names ... OK
> * checking for sufficient/correct file permissions ... OK
> * checking whether package ‘rgeos’ can be installed ... ERROR
> Installation failed.
> See ‘/group/stsn/src/test/rgeos.Rcheck/00install.out’ for details.
> * DONE
>
> Status: 1 ERROR
> See
>  ‘/group/stsn/src/test/rgeos.Rcheck/00check.log’
> for details.
>
> cat /group/stsn/src/test/rgeos.Rcheck/00install.out
> * installing *source* package ‘rgeos’ ...
> ** package ‘rgeos’ successfully unpacked and MD5 sums checked
> configure: CC: /usr/bin/gcc -std=gnu99
> configure: CXX: /usr/bin/g++
> configure: rgeos: 0.3-23
> checking for /usr/bin/svnversion... no
> configure: svn revision: 546
> configure: geos-config set to /group/stsn/shared_libs/geos/bin/geos-config
> checking geos-config exists... yes
> checking geos-config executable... yes
> checking geos-config usability... yes
> configure: GEOS version: 3.7.0dev
> checking geos version at least 3.2.0... yes
> checking geos-config clibs... yes
> checking for gcc... /usr/bin/gcc -std=gnu99
> 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... configure: error: in
> `/group/stsn/src/test/rgeos.Rcheck/00_pkg_src/rgeos':
> configure: error: cannot run C compiled programs.
> If you meant to cross compile, use `--host'.
> See `config.log' for more details
> ERROR: configuration failed for package ‘rgeos’
> * removing ‘/group/stsn/src/test/rgeos.Rcheck/rgeos’
>
> 3) And here's my session info:
>
> sessionInfo()
> R version 3.3.1 (2016-06-21)
> Platform: x86_64-pc-linux-gnu (64-bit)
> Running under: CentOS Linux 7 (Core)
>
> locale:
> [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
> [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
> [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
> [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
> [9] LC_ADDRESS=C               LC_TELEPHONE=C
> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
>
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods   base
>
> 	[[alternative HTML version deleted]]
>
> _______________________________________________
> 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; e-mail: Roger.Bivand at nhh.no
Editor-in-Chief of The R Journal, https://journal.r-project.org/index.html
http://orcid.org/0000-0003-2392-6140
https://scholar.google.no/citations?user=AWeghB0AAAAJ&hl=en


More information about the R-sig-Geo mailing list