Ich versuche das rJava-Paket unter OS X 10.11.6 mit R-Version 3.4.0 zu installieren:
%Vor%und ich bekomme den folgenden Fehler:
%Vor%Soweit ich das beurteilen kann, wird clang als Compiler verwendet, wobei 'fopenmp' verwendet wird, das anscheinend nicht von clang unterstützt wird. Kann irgendjemand einen Weg sehen, um einen anderen Compiler zu benutzen? (Anmerkung: Ich weiß fast nichts über Compiler)
Vielen Dank im Voraus.
Dies liegt daran, dass R 3.4.0 von CRAN mit llvm-4.0.0 kompiliert wurde (welches OpenMP unterstützt), aber Apples Fork (standardmäßig auf macOS installiert) nicht unterstützt OpenMP. Es gibt drei Lösungen
install.packages(type = "binary")
. ~/.R/Makevars
) ändern. SHLIB_OPENMP_CFLAGS
und SHLIB_OPENMP_CXXFLAGS
in Ihrem ~/.R/Makevars
Für 2. Sie können die Compiler mit brew install clang
oder brew install gcc --without-multilib
installieren, dann müssen Sie den Compiler-Pfad zu Ihrer ~/.R/Makevars
Datei hinzufügen.
oder für gcc
verwenden (doppelte Überprüfung gcc ausführbare Datei existiert und wird korrekt benannt)
Alternativ können Sie ein von CRAN bereitgestelltes LLVM 4.0 installieren und die Datei Makevars
entsprechend einstellen.
Für 3. müssen Sie einfach die SHLIB_OPENMP_CFLAGS
Weitere Informationen finden Sie unter OpenMP-Unterstützung in Schreiben von R-Erweiterungen.
Hinweis: Dieser Fehler hat nichts mit Java oder insbesondere dem rJava-Paket zu tun, daher könnte die Frage idealerweise in clang: error: unsupported option '-fopenmp'
umbenannt werden.
Tags und Links java r compiler-errors