簡體   English   中英

安裝后,Windows 7 上的 ROracle 包加載失敗

[英]ROracle package load fails on windows 7 after install

我到處查看並按照提供的確切說明進行操作,但是當我在 Windows 7 機器上加載庫時遇到了這個錯誤:

Error in inDL(x, as.logical(local), as.logical(now), ...) : 
  unable to load shared object 'C:/Program Files/R/R-3.2.3/library/ROracle/libs/x64/ROracle.dll':
  LoadLibrary failure:  %1 is not a valid Win32 application.

Error: package or namespace load failed for ‘ROracle’

這是我的 R 版本:

platform       x86_64-w64-mingw32          
arch           x86_64                      
os             mingw32                     
system         x86_64, mingw32             
status                                     
major          3                           
minor          2.3                         
year           2015                        
month          12                          
day            10                          
svn rev        69752                       
language       R                           
version.string R version 3.2.3 (2015-12-10)
nickname       Wooden Christmas-Tree       

我從這個頁面下載了適用於 Windows 的 ROracle 二進制文件: http : //www.oracle.com/technetwork/database/database-technologies/r/roracle/downloads/index.html

我使用了 ROracle 1.2-1 版本。

我的OCI_LIB64和PATH環境變量如下:

OCL_LIB64=C:\Oracle\product\11.2.0\client_1\bin
PATH:C:\Oracle\product\11.2.0\client_1;C:\Oracle\product\11.2.0\client_1\bin

還有什么我想念的嗎? 我怎樣才能讓它發揮作用?

我擁有所有文件夾的管理員權限,包括庫路徑。

您需要安裝Oracle Instant Client來解決此錯誤,如https://docs.oracle.com/cd/E67822_01/OREAD/apx_typicalinstall.htm#OREAD274所示

您的OCL_LIB64和PATH變量應指向某種\\ bin目錄,而它們應指向Instant Client解壓縮目錄(本例中沒有\\ bin)。

您需要將 Oracle Client 32 位和 64 位 witk SDk 文件夾目錄添加到 Windows 系統環境變量路徑。 還需要安裝 rjava 包(安裝 java 64 位)並在 R sys.setenv() 中設置 JAVA_HOME。

install.packages("rJava")       #Install Java 64 bits
library(rJava)                  #Not Errors

Sys.setenv("OCI_LIB64"="C:/instantclient_12_2_64bits")
Sys.setenv("OCI_LIB32" = "C:/instantclient_12_2_64bits")
Sys.setenv("ORACLE_HOME" = "C:/instantclient_12_2_64bits")

Sys.setenv(JAVA_HOME='C:/Program Files/Java/jre1.8.0_241')

install.packages(paste0(path,"/ROracle_1.3-1.tar.gz"), repos = NULL, type = "source")
library(ROracle)

安裝過程中的最后一條消息應該是 DONE!

在 Windows 系統環境路徑中:

C:\instantclient_12_2_64bits;
C:\instantclient_12_2_64bits\sdk;
C:\instantclient_12_2_32bits;
C:\instantclient_12_2_32bits\sdk;

希望這有效!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM