Difference between revisions of "BwUniCluster2.0/Software/R/Rgdal"

From bwHPC Wiki
Jump to: navigation, search
Line 93: Line 93:
 
export CFLAGS=-I$HOME/sw/R/include
 
export CFLAGS=-I$HOME/sw/R/include
 
export CXX="icpc -std=c++11"
 
export CXX="icpc -std=c++11"
  +
export CXX17=icpc
 
</pre>
 
</pre>
   
   
Now, we install rgdal and rgeos from within R
+
Now, we install rgdal and rgeos from within R. Note that, since we install a package from a local repository the order of the package installation is relevant. Installing rgdal will fail if sp is not available.
   
 
<pre>
 
<pre>
  +
 
module load math/R/4.1.2
 
module load math/R/4.1.2
  +
  +
cd
  +
wget https://cran.r-project.org/src/contrib/Archive/rgdal/rgdal_1.6-4.tar.gz
  +
wget https://cran.r-project.org/src/contrib/Archive/rgeos/rgeos_0.6-1.tar.gz
  +
 
R -q
 
R -q
> install.packages("rgdal")
+
> install.packages("sp", repos="https://ftp.gwdg.de/pub/misc/cran/")
> install.packages("rgeos")
+
> install.packages("~/rgdal_1.6-4.tar.gz", repos=NULL, type="source")
  +
> install.packages("~/rgeos_0.6-1.tar.gz", repos=NULL, type="source")
  +
 
> library("rgdal")
 
> library("rgdal")
 
> library("rgeos")
 
> library("rgeos")

Revision as of 15:02, 13 February 2024

1 General information

Note that rgdal and rgeos have been retired by their developers in 2023! Please find further information at https://cran.r-project.org/web/packages/rgdal/index.html and https://cran.r-project.org/web/packages/rgeos/index.html.

Installing rgdal and rgeos is, however, still possible using the instructions below.


rgdal and rgeos allows to use the following tools for handling spatial structures in R

  • the 'Geospatial' Data Abstraction Library GDAL
  • Projection/transformation operations from the PROJ library
  • Interface to the open source Geometry Engine GEOS


2 Installation

Please enter the following code, presented in the boxes below, directly into your shell/command line on bwUniCluster.

2.1 Install external programs

First, we download the sources of GDAL, PROJ, GEOS and install the three programs.

We will gather them in a folder src, unpack there and then compile.

We strongly recommend to use a interactive session with multiple cores.

salloc -n 4 -t 30 -p dev_single


First, provide the source directory (if not yet existing)

mkdir -p ~/src
cd ~/src

Then, download and install PROJ

PROJ_VER=6.3.2
wget http://download.osgeo.org/proj/proj-$PROJ_VER.tar.gz
tar xf proj-$PROJ_VER.tar.gz
cd proj-$PROJ_VER
./configure --prefix=$HOME/sw/R
make -j 8 
make install
cd ..

Then, install gdal

GDAL_VER=3.4.1
wget http://download.osgeo.org/gdal/$GDAL_VER/gdal-$GDAL_VER.tar.gz
tar xf gdal-$GDAL_VER.tar.gz
cd gdal-$GDAL_VER
./configure --prefix=$HOME/sw/R --with-proj=$HOME/sw/R
make -j 8
make install
cd ..

Finally, install GEOS

GEOS_VER=3.9.2
wget http://download.osgeo.org/geos/geos-$GEOS_VER.tar.bz2
tar xf geos-$GEOS_VER.tar.bz2
cd geos-$GEOS_VER
./configure --prefix=$HOME/sw/R
make -j 8 
make install
cd ..

2.2 Installing the R packages

In order to install the two R packages, we need R to understand where we installed the 3 underlying programs, so we export the necessary paths.

export LD_LIBRARY_PATH=$HOME/sw/R/lib:$LD_LIBRARY_PATH
export PATH=$PATH:$HOME/sw/R/bin
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$HOME/sw/R/lib/pkgconfig
export GDAL_DATA=$HOME/sw/R/share/gdal


Additionally, the R package installation features compilation of built-in C++ code, for which we specify compilation options ('compiler flags')

export CFLAGS=-I$HOME/sw/R/include
export CXX="icpc -std=c++11"
export CXX17=icpc


Now, we install rgdal and rgeos from within R. Note that, since we install a package from a local repository the order of the package installation is relevant. Installing rgdal will fail if sp is not available.


module load math/R/4.1.2

cd 
wget https://cran.r-project.org/src/contrib/Archive/rgdal/rgdal_1.6-4.tar.gz
wget https://cran.r-project.org/src/contrib/Archive/rgeos/rgeos_0.6-1.tar.gz

R -q
> install.packages("sp", repos="https://ftp.gwdg.de/pub/misc/cran/")
> install.packages("~/rgdal_1.6-4.tar.gz", repos=NULL, type="source")
> install.packages("~/rgeos_0.6-1.tar.gz", repos=NULL, type="source")

> library("rgdal")
> library("rgeos")

2.3 Preparations to use the rgdal/rgeos packages

Since rgdal and rgeos depend on the external programs we installed, several environment variables have to be set before using the packages to allow R to address these programs.

We recommend to add the export commands

export LD_LIBRARY_PATH=$HOME/sw/R/lib:$LD_LIBRARY_PATH
export PATH=$PATH:$HOME/sw/R/bin
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$HOME/sw/R/lib/pkgconfig
export GDAL_DATA=$HOME/sw/R/share/gdal

to your batch job scripts that use rgdal and rgeos or to run them directly in the command line if you use an interactive session.