2013-10-10 129 views
2

我在Mac OSX 10.8.5上安裝了64位R(R版本2.15.2(2012-10-26) - 「搗蛋」)和Oracle Instantclient版本從Oracle安裝11.2.0.3.0。我已經得到了sqlplus,以及Perl和Python來運行這些。現在我正在試圖建立「神話」。它需要從源代碼構建,所以我下載了它,並嘗試運行:在MacOSX 10.8(Mountain Lion)上的64位安裝的ROracle:

R CMD INSTALL ROracle_1.1-10.tar.gz 

不過,我認爲它期待比的即時客戶端給了我不同的目錄結構。例如,當我試圖運行命令,我得到:

$ R CMD INSTALL ROracle_1.1-10.tar.gz 
* installing to library ‘/Library/Frameworks/R.framework/Versions/2.15/Resources/library’ 
* installing *source* package ‘ROracle’ ... 
** package ‘ROracle’ successfully unpacked and MD5 sums checked 
configure: error: "/Applications/instantclient_11_2/lib" directory does not exist 
ERROR: configuration failed for package ‘ROracle’ 
* removing ‘/Library/Frameworks/R.framework/Versions/2.15/Resources/library/ROracle’ 

這是真的,我沒有在我的「/應用/ instantclient_11_2」目錄「lib」目錄下。然而,我也嘗試僞造它通過創建一個鏈接到名爲.dylib文件在「/應用/ instantclient_11_2」目錄,和我過去的錯誤,以一個新的:

$ R CMD INSTALL ROracle_1.1-10.tar.gz 
* installing to library ‘/Library/Frameworks/R.framework/Versions/2.15/Resources/library’ 
* installing *source* package ‘ROracle’ ... 
** package ‘ROracle’ successfully unpacked and MD5 sums checked 
configure: error: "/Applications/instantclient_11_2/rdbms/public" directory does not exist 
ERROR: configuration failed for package ‘ROracle’ 
* removing ‘/Library/Frameworks/R.framework/Versions/2.15/Resources/library/ROracle’ 

所以現在是尋找另一個不在那裏的目錄。我不想繼續猜測它所期望的目錄,並試圖用指向它們應該在這些目錄中預期的文件的鏈接來填充它(我甚至不知道它在這裏可能會期待什麼)。

是否有另一種方式去安裝?我想我應該能夠做到這一點,基於Perl和Python可以使用這些驅動程序的事實。

謝謝, 馬特

回答

5

我認爲你有 「ORACLE_HOME」 變量集。我有同樣的問題,一旦我做了

export ORACLE_HOME="" 

我可以成功編譯ROracle。

前:

[email protected]:~/Downloads$ R CMD INSTALL ROracle_1.1-10.tar.gz 
*installing to library ‘/opt/R/library’ 
* installing *source* package ‘ROracle’ ... 
** package ‘ROracle’ successfully unpacked and MD5 sums checked 
configure: error: "/usr/lib/oracle/12.1/rdbms/public" directory does not exist 
ERROR: configuration failed for package ‘ROracle’ 
* removing ‘/opt/R/library/ROracle’ 

後:

[email protected]:~/Downloads$ export ORACLE_HOME="" 
[email protected]:~/Downloads$ R CMD INSTALL ROracle_1.1-10.tar.gz 
* installing to library ‘/opt/R/library’ 
* installing *source* package ‘ROracle’ ... 
** package ‘ROracle’ successfully unpacked and MD5 sums checked 
configure: creating ./config.status 
config.status: creating src/Makevars 
** libs 
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -I/opt/oracle/sdk/include  -fpic -O2 -pipe -g -c rodbi.c -o rodbi.o 
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -I/opt/oracle/sdk/include  -fpic -O2 -pipe -g -c rooci.c -o rooci.o 
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -I/opt/oracle/sdk/include  -fpic -O2 -pipe -g -c routl.c -o routl.o 
gcc -std=gnu99 -shared -o ROracle.so rodbi.o rooci.o routl.o -L/opt/oracle -lclntsh -L/usr/lib/R/lib -lR 
installing to /opt/R/library/ROracle/libs 
** R 
** inst 
** preparing package for lazy loading 
** help 
*** installing help indices 
** building package indices 
** installing vignettes 
** testing if installed package can be loaded 
* DONE (ROracle) 
+0

謝謝,我會檢查,如果這個工程晚了一點。 – mpettis

+0

yep'unset ORACLE_HOME'也爲我解決了這個問題。 –

+0

在''取消設置ORACLE_HOME''之後,我遇到了錯誤''configure:error:OCI libraries not found''。我應該如何解決這個問題? – mamatv

相關問題