简体   繁体   English

已安装ROracle,但安装相关软件包时加载失败

[英]ROracle installed but loading failure installing a depending package

I'm working on a Windows Server x64 with R version 3.5.1 (see sessionInfo for details ). 我正在使用R版本3.5.1的Windows Server x64( 有关详细信息,请参见sessionInfo )。

ROracle package version 1.3-1 is already installed (see installed.packages details ) and works fine (see ROracle call example ). 已经安装了ROracle软件包1.3-1版(请参阅installed.packages details )并且可以正常工作(请参阅ROracle调用示例 )。

I intend to install an internal developed R package which has the following dependencies declared in its 'DESCRIPTION' file : " Depends: R (>= 3.1.0), DBI, ROracle ". 我打算安装内部开发的R程序包,该程序包在其“ DESCRIPTION”文件中声明了以下依赖关系:“ 依赖关系:R(> = 3.1.0),DBI和ROracle ”。

When I launch this internal package installation, I get the following error message (see attached screenshot for full error message ): 当我启动此内部软件包安装时,会收到以下错误消息( 有关完整的错误消息,请参见所附屏幕截图 ):

** testing if installed package can be loaded **测试是否可以装入已安装的软件包

*** arch - i386 ***拱-i386

Error : package 'ROracle' is not installed for 'arch = i386' 错误:未为“ arch = i386”安装软件包“ ROracle”

Error: loading failed Execution halted 错误:加载失败执行停止

*** arch - x64 ***拱门-x64

ERROR: loading failed for 'i386' 错误:“ i386”的加载失败

For information this package has already been installed on several computers without facing any error, the first trouble happens on this virtual machine. 有关信息,此软件包已经安装在多台计算机上,没有遇到任何错误,该虚拟机上出现了第一个问题。

It looks like the installation you are running for your package is testing your package in a multiarch environment, which is therefore checking the dependencies in a multiarch environment. 您似乎正在为软件包运行的安装正在多​​体系结构环境中测试软件包,因此正在检查多体系结构环境中的依赖关系。 There would be 2 ways around this: 有两种解决方法:

  1. Install a 32-bit ROracle client in addition to the 64-bit, set the appropriate OCI_LIB32 environment variable, and re-install ROracle so it is aware of both architectures. 除64位外,还安装32位ROracle客户端,设置适当的OCI_LIB32环境变量,然后重新安装ROracle,以便它了解两种体系结构。
  2. Add the --no-multiarch option to your install, so either R CMD INSTALL --no-multiarch or install.packages(...,configure.args = c("--no-multiarch")) . --no-multiarch选项添加到您的安装中,因此可以使用R CMD INSTALL --no-multiarchinstall.packages(...,configure.args = c("--no-multiarch"))

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM