在 Mac 上安装 rJava 时遇到问题; JNI 数据类型的问题
Trouble installing rJava on Mac ; trouble with JNI data types
已解决!!
请参阅下面我的解决方案,以防此问题将来对其他人有所帮助。
错误
如标题所述,它对我来说失败了。当我尝试从 R 内部 install.packages('rJava')
时,我收到的错误是(之前进行了一些良好的检查):
checking whether JNI programs can be compiled... yes
checking JNI data types... configure: error: One or more JNI types differ from the corresponding native type. You may need to use non-standard compiler flags or a different compiler in order to fix this.
ERROR: configuration failed for package ‘rJava’
* removing ‘/usr/local/lib/R/3.2/site-library/rJava’
修复尝试
我已经检查并尝试了以下解决方案,none 对我有用:
sudo R CMD javareconf
more detailed sudo R CMD javareconf
export JAVA_HOME
,但是在这种情况下,我没有执行 LD_LIBRARY_PATH,因为它似乎与 Mac.[=21= 无关]
任何这些尝试都没有这样的运气。
我 之前正确安装了 rJava
(和 RJDBC
)。
[编辑:我后来发现,实际问题是升级到 OS X 10.11,El Capitan。]
配置
$ java -version
java version "1.8.0_45"
> R.Version()
$platform
[1] "x86_64-apple-darwin15.0.0"
$version.string
[1] "R version 3.2.2 (2015-08-14)"
Mac OS 本身:
System Version: OS X 10.11.1 (15B42)
I did not do the LD_LIBRARY_PATH, as it did not seem relevant to a Mac
是的,但是 Mac 有 DYLD_LIBRARY_PATH
。如果你 link 和 -ljvm
你必须在 DYLD_LIBRARY_PATH
.
中有包含 libjvm.dylib
的目录
也就是说,我发现 link 使用 -ljli
(在 lib/jli
中)的 JNI 程序更方便,因为程序 link 使用 -ljvm
将在系统没有安装 Apple 自己的 Java 运行时时打开一个提示(至少他们在我和我们客户的系统上安装了一段时间)。
编辑:这是 link 到 dyld documentation
我终于通过找到的解决方案解决了这个问题 here。
新的 Mac OS X(10.11,El Capitan)在环境变量方面有问题。
rJava
的最新开发风格设法正确处理事情。这是我为解决它所做的工作:
- 从 here
下载版本 0.9-8 (rJava_0.9-8.tar.gz
)
从下载的源安装:
$ R 命令安装 ~/Downloads/rJava_0.9-8.tar.gz
(或者你放在哪里)
就这些了!
已解决!!
请参阅下面我的解决方案,以防此问题将来对其他人有所帮助。
错误
如标题所述,它对我来说失败了。当我尝试从 R 内部 install.packages('rJava')
时,我收到的错误是(之前进行了一些良好的检查):
checking whether JNI programs can be compiled... yes
checking JNI data types... configure: error: One or more JNI types differ from the corresponding native type. You may need to use non-standard compiler flags or a different compiler in order to fix this.
ERROR: configuration failed for package ‘rJava’
* removing ‘/usr/local/lib/R/3.2/site-library/rJava’
修复尝试
我已经检查并尝试了以下解决方案,none 对我有用:
sudo R CMD javareconf
more detailed sudo R CMD javareconf
export JAVA_HOME
,但是在这种情况下,我没有执行 LD_LIBRARY_PATH,因为它似乎与 Mac.[=21= 无关]
任何这些尝试都没有这样的运气。
我 之前正确安装了 rJava
(和 RJDBC
)。
[编辑:我后来发现,实际问题是升级到 OS X 10.11,El Capitan。]
配置
$ java -version
java version "1.8.0_45"
> R.Version()
$platform
[1] "x86_64-apple-darwin15.0.0"
$version.string
[1] "R version 3.2.2 (2015-08-14)"
Mac OS 本身:
System Version: OS X 10.11.1 (15B42)
I did not do the LD_LIBRARY_PATH, as it did not seem relevant to a Mac
是的,但是 Mac 有 DYLD_LIBRARY_PATH
。如果你 link 和 -ljvm
你必须在 DYLD_LIBRARY_PATH
.
libjvm.dylib
的目录
也就是说,我发现 link 使用 -ljli
(在 lib/jli
中)的 JNI 程序更方便,因为程序 link 使用 -ljvm
将在系统没有安装 Apple 自己的 Java 运行时时打开一个提示(至少他们在我和我们客户的系统上安装了一段时间)。
编辑:这是 link 到 dyld documentation
我终于通过找到的解决方案解决了这个问题 here。
新的 Mac OS X(10.11,El Capitan)在环境变量方面有问题。
rJava
的最新开发风格设法正确处理事情。这是我为解决它所做的工作:
- 从 here 下载版本 0.9-8 (
从下载的源安装:
$ R 命令安装 ~/Downloads/rJava_0.9-8.tar.gz
rJava_0.9-8.tar.gz
)
(或者你放在哪里)
就这些了!