System Dependencies of R Packages

Many R packages require system packages to be installed. An R package will fail to compile and install if its system dependencies are not available. We recommend installing these system requirements before your data science team begins deploying content to Posit Connect.

Different packages and commands are provided for each supported distribution. Depending on your user permissions, you might need to use sudo to run these commands.

rpm -q epel-release || dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm

if ! subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms; then
  # add the codeready-builder repository
  dnf install -y dnf-plugins-core
  dnf config-manager --set-enabled "codeready-builder-for-rhel-9-*-rpms" || true
fi

dnf install -y tcl tk tk-devel java-11-openjdk-devel cmake git libpng-devel libjpeg-turbo-devel make ImageMagick ImageMagick-c++ openssl-devel freetype-devel fribidi-devel harfbuzz-devel libsodium-devel cairo-devel libgit2-devel libssh2-devel zlib-devel udunits2-devel unixODBC-devel libxml2-devel mariadb-devel libicu-devel libcurl-devel gdal-devel gdal geos-devel proj-devel sqlite-devel python3 nodejs-libs fontconfig-devel mesa-libGLU-devel mesa-libGL-devel glpk-devel libtiff-devel
rpm -q epel-release || dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

if ! subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms; then
  # add the codeready-builder repository
  dnf install -y dnf-plugins-core
  dnf config-manager --set-enabled "codeready-builder-for-rhel-8-*-rpms" || true
fi

dnf install -y tcl tk tk-devel java-1.8.0-openjdk-devel cmake git libpng-devel libjpeg-turbo-devel make ImageMagick ImageMagick-c++ openssl-devel freetype-devel fribidi-devel harfbuzz-devel libsodium-devel cairo-devel libgit2-devel libssh2 zlib-devel udunits2-devel unixODBC-devel libxml2-devel mariadb-devel libicu-devel libcurl-devel gdal-devel gdal sqlite-devel geos-devel proj-devel fontconfig-devel mesa-libGLU-devel mesa-libGL-devel glpk-devel libtiff-devel
rpm -q epel-release || yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

if ! subscription-manager repos --enable "rhel-*-optional-rpms"; then
  # enable RHEL optional RPMs
  yum install -y yum-utils
  yum-config-manager --enable "rhel-*-optional-rpms" || true
fi

yum install -y tcl tk tk-devel java-1.8.0-openjdk-devel cmake cmake3 git libpng-devel libjpeg-turbo-devel make ImageMagick ImageMagick-c++ openssl-devel freetype-devel fribidi-devel harfbuzz-devel libsodium-devel cairo-devel libgit2-devel libssh2 zlib-devel udunits2-devel unixODBC-devel libxml2-devel mariadb-devel libicu-devel libcurl-devel gdal-devel gdal geos-devel proj-devel proj-epsg sqlite-devel v8-devel fontconfig-devel mesa-libGLU-devel mesa-libGL-devel glpk-devel libtiff-devel
yum install -y epel-release
yum install -y tcl tk tk-devel java-1.8.0-openjdk-devel cmake cmake3 git libpng-devel libjpeg-turbo-devel make ImageMagick ImageMagick-c++-devel openssl-devel freetype-devel fribidi-devel harfbuzz-devel libsodium-devel cairo-devel libgit2-devel libssh2-devel zlib-devel udunits2-devel unixODBC-devel libxml2-devel mariadb-devel libicu-devel libcurl-devel gdal-devel gdal geos-devel proj-devel proj-epsg sqlite-devel v8-devel fontconfig-devel mesa-libGLU-devel mesa-libGL-devel glpk-devel libtiff-devel
amazon-linux-extras install epel -y
yum remove -y libuv
yum install -y libuv-devel
yum install -y libuv --disableplugin=priorities
yum install -y tcl tk tk-devel java-1.8.0-openjdk-devel cmake cmake3 git libpng-devel libjpeg-turbo-devel make ImageMagick ImageMagick-c++ openssl-devel freetype-devel fribidi-devel harfbuzz-devel libsodium-devel cairo-devel libgit2-devel libssh2 zlib-devel udunits2-devel unixODBC-devel libxml2-devel mariadb-devel libicu-devel libcurl-devel gdal-devel gdal geos-devel proj-devel proj-epsg sqlite-devel v8-devel fontconfig-devel mesa-libGLU-devel mesa-libGL-devel glpk-devel libtiff-devel
apt install -y tcl tk tk-dev tk-table default-jdk cmake git libpng-dev libjpeg-dev make imagemagick libmagick++-dev gsfonts libssl-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libsodium-dev libcairo2-dev libssh2-1-dev zlib1g-dev libudunits2-dev unixodbc-dev libxml2-dev libmysqlclient-dev libicu-dev libcurl4-openssl-dev libgdal-dev gdal-bin libgeos-dev libproj-dev libsqlite3-dev python3 libnode-dev libfontconfig1-dev libglu1-mesa-dev libgl1-mesa-dev libglpk-dev libtiff-dev
apt install -y tcl tk tk-dev tk-table default-jdk cmake git libpng-dev libjpeg-dev make imagemagick libmagick++-dev gsfonts libssl-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libsodium-dev libcairo2-dev libssh2-1-dev zlib1g-dev libudunits2-dev unixodbc-dev libxml2-dev libmysqlclient-dev libicu-dev libcurl4-openssl-dev libgdal-dev gdal-bin libgeos-dev libproj-dev libsqlite3-dev python3 libnode-dev libfontconfig1-dev libglu1-mesa-dev libgl1-mesa-dev libglpk-dev libtiff-dev
zypper install -y tcl tk tk-devel cmake git libpng16-compat-devel libjpeg8-devel make ImageMagick ImageMagick-devel libMagick++-devel libopenssl-devel freetype2-devel cairo-devel libssh2-devel zlib-devel unixODBC-devel libxml2-devel libcurl-devel sqlite3-devel fontconfig-devel glu-devel Mesa-libGL-devel libtiff-devel
zypper install -y tcl tk tk-devel cmake git libpng16-compat-devel libjpeg8-devel make ImageMagick ImageMagick-devel libMagick++-devel libopenssl-devel freetype2-devel cairo-devel libssh2-devel zlib-devel unixODBC-devel libxml2-devel libcurl-devel sqlite3-devel fontconfig-devel glu-devel Mesa-libGL-devel libtiff-devel

These installation commands are available from the Posit Public Package Manager. If you are using a hosted Posit Package Manager instance, the same installation commands are available on the setup page for your repository and on the details page for each package.

For more information, see the Posit Package Manager documentation.