在macOS Sierra 10.12.1上安装rJava:链接器错误licuuc
我试图在R-Studio中安装rJava但错误
ld: library not found for -licuuc clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [libjri.jnilib] Error 1 make[1]: *** [src/JRI.jar] Error 2 make: *** [jri] Error 2 ERROR: compilation failed for package 'rJava' * removing '/Users/iMacLinda/Library/R/3.3/library/rJava' Warning in install.packages : installation of package 'rJava' had non-zero exit status
[R
version _ platform x86_64-apple-darwin16.1.0 arch x86_64 os darwin16.1.0 system x86_64,darwin16.1.0 status major 3 minor 3.2 year 2016 month 10 month 31 svn rev 71607 language R version.string R version 3.3.2(2016-10) -31)昵称真诚的南瓜补丁
如何修复此链接器错误?
我在MacPorts的其他地方找到了解决方案, 这里引导的步骤1-5和此处引导的步骤6。
-
以root(sudo bash)编辑
/opt/local/Library/Frameworks/R.framework/Resources/etc/Makeconf
并将行LIBS = -llzma -lm -liconv -licuuc -licui18n
为LIBS = -llzma -lm -liconv
-
安装原始的1.6 Mac Java
-
run
export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
-
R CMD javareconf
-
现在你可以启动R并执行
install.packages("rJava")
。 -
sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib
这里有Anaconda的解决方案。 问题在于路径变量,所以也许这也可以解决问题。 我概述了下面的解决方案,关于如何在这里解决它。
清理你的道路
-
检查配置设置
R CMD config --ldflags -L/Users/osx/anaconda3/lib/R/lib -lR -lpcre -llzma -lbz2 -lz -lm -liconv -licuuc -licui18n
-
测试这个
mv ~/.bash_profile ~/.bash_profile_backup
。 -
重启终端。
-
现在R中的环境变量应该是不同的
$ R CMD config --ldflags -F/Library/Frameworks/R.framework/.. -framework R -lpcre -llzma -lbz2 -lz -licucore -lm -liconv
-
运行以下
sudo R CMD javareconf Rscript -e 'install.packages("rJava", repos="http://rforge.net", type="source")'
-
如果你能够安装rJava,问题出在你的路径上,否则尝试替代解决方案。
Homebrew的替代解决方案
Homebrew还有一个解决方案,其中R安装了brew cask install r-app
并且必须在没有forenmp标志的情况下重新编译gcc。