2024/10/22

Ubuntu 22.04 R + RStudio Installieren von Package "tidyverse" fehlgeschlagen

Package-Install auf RStudio fehlgeschlagen

Ich versuchte, auf der Console von RStudio das Paket "tidyverse" zu installieren; 

install.packages("tidyverse") Installiere Paket nach ‘/home/yasushi/R/x86_64-pc-linux-gnu-library/4.4’ (da ‘lib’ nicht spezifiziert) installiere auch Abhängigkeiten ‘textshaping’, ‘ragg’, ‘readxl’ ∙∙∙∙∙∙∙∙∙∙ * installing *source* package ‘textshaping’ ... ** Paket ‘textshaping’ erfolgreich entpackt und MD5 Summen überprüft ** using staged installation Package harfbuzz was not found in the pkg-config search path. Perhaps you should add the directory containing `harfbuzz.pc' to the PKG_CONFIG_PATH environment variable Package 'harfbuzz', required by 'virtual:world', not found Package 'fribidi', required by 'virtual:world', not found Using PKG_CFLAGS= Using PKG_LIBS=-lfreetype -lharfbuzz -lfribidi -lpng --------------------------- [ANTICONF] -------------------------------- Configuration failed to find the harfbuzz freetype2 fribidi library. Try installing: * deb: libharfbuzz-dev libfribidi-dev (Debian, Ubuntu, etc) * rpm: harfbuzz-devel fribidi-devel (Fedora, EPEL) * csw: libharfbuzz_dev libfribidi_dev (Solaris) * brew: harfbuzz fribidi (OSX) If harfbuzz freetype2 fribidi is already installed, check that 'pkg-config' is in your PATH and PKG_CONFIG_PATH contains a harfbuzz freetype2 fribidi.pc file. If pkg-config is unavailable you can set INCLUDE_DIR and LIB_DIR manually via: R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...' -------------------------- [ERROR MESSAGE] --------------------------- <stdin>:1:10: fatal error: hb-ft.h: Datei oder Verzeichnis nicht gefunden compilation terminated. -------------------------------------------------------------------- ERROR: configuration failed for package ‘textshaping’ * removing ‘/home/yasushi/R/x86_64-pc-linux-gnu-library/4.4/textshaping’ Warning in install.packages : Installation des Pakets ‘textshaping’ hatte Exit-Status ungleich 0 * installing *source* package ‘readxl’ ... ** Paket ‘readxl’ erfolgreich entpackt und MD5 Summen überprüft ** using staged installation ** libs using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ using C++ compiler: ‘g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’ ∙∙∙∙∙∙∙∙∙∙ cc1plus: some warnings being treated as errors make: *** [/usr/lib/R/etc/Makeconf:204: Read.o] Fehler 1 ERROR: compilation failed for package ‘readxl’ * removing ‘/home/yasushi/R/x86_64-pc-linux-gnu-library/4.4/readxl’ Warning in install.packages : Installation des Pakets ‘readxl’ hatte Exit-Status ungleich 0 ERROR: dependency ‘textshaping’ is not available for package ‘ragg’ * removing ‘/home/yasushi/R/x86_64-pc-linux-gnu-library/4.4/ragg’ Warning in install.packages : Installation des Pakets ‘ragg’ hatte Exit-Status ungleich 0 ERROR: dependency ‘ragg’ is not available for package ‘tidyverse’ * removing ‘/home/yasushi/R/x86_64-pc-linux-gnu-library/4.4/tidyverse’ Warning in install.packages : Installation des Pakets ‘tidyverse’ hatte Exit-Status ungleich 0 Die heruntergeladenen Quellpakete sind in ‘/tmp/RtmpLyVdTT/downloaded_packages’

Die Installation ist mit der oberen Fehlermeldung fehlgeschlagen. Es wurde versucht, erst die abhängigen Paketen 'textshaping','ragg' sowie 'readxl' zu installieren und Die Installation vom textshaping ist fehlgeschlagen. 

 

Lösung*

Wie im "ANTICONF" steht versuchte die oben genannten librarys zu  installieren; 

1. auf Terminal in Ubuntu

sudo apt install libharfbuzz-dev libfribidi-dev
2. auf die Console im RStudio
install.packages("textshaping", dependencies = TRUE) 

Nachdem das Paket 'textshaping' erfolgreich installiert wurde, wurden alle anderen auch erfolgreich installiert.

 


Diskussion

Erst habe ich auf den Terminal in Ubuntu folgenden Kommando eingegeben;
sudo apt install libharfbuzz-dev libfribidi-dev
Dann wieder auf die Console im RStudio;
install.packages("textshaping")

Schließlich kam aber eine ähnliche Fehlermeldung wie oben auf die Console. 

Die Lösung war, dass man nach dem ersten Kommando auf den Terminal in Ubuntu eingegeben hat, sollte auf die Console von RStudio 

install.packages("textshaping", dependencies = TRUE)

eingeben. 

Alternative Lösungen sind hier oder hier. Anscheinend werden für das Paket mehrere librarys im Betriebssystem benötigt. Sie können wir aus RStudio herausfinden**:

1. Gebe folgendes Kommando*** auf die Console im RStudio ein;

pak::pkg_sysreqs("tidyverse")

    oder wenn das paket pak noch nicht installiert wurde, erst

install.packages("pak")
library(pak)
pak::pkg_sysreqs("tidyverse")

         Das Kommando gibt ein Script für die Installation benötiger librarys zurück. z.B.;

── Install scripts ──────────────────────────────────── Ubuntu 22.04 ── apt-get -y update apt-get -y install libx11-dev libcurl4-openssl-dev libssl-dev make \ zlib1g-dev pandoc libfreetype6-dev libjpeg-dev libpng-dev \ libtiff-dev libicu-dev libfontconfig1-dev libfribidi-dev \ libharfbuzz-dev libxml2-dev

2. Gebe diese mit 'sudo' auf den Terminal in Ubuntu ein ;

sudo apt-get -y update
sudo apt-get -y install libx11-dev libcurl4-openssl-dev libssl-dev make \
  zlib1g-dev pandoc libfreetype6-dev libjpeg-dev libpng-dev \
  libtiff-dev libicu-dev libfontconfig1-dev libfribidi-dev \
  libharfbuzz-dev libxml2-dev

3. Gebe schließlich dies Kommando auf die Console im RStudio ein;

install.packages("textshaping")
 

Quelle und Bemerkung

 *    I am facing error while installing R package textshaping

**   tidyverse 

*** Auf der Webseite 'tidyverse' seht das Kommando 'pkg_system_requirements()' Das ist veraltet und ab der Version 0.6.0 (aktuell 0.8.0) sollte man anstatt das Kommando 'pkg_sysreqs()' anwenden.