2013-08-04 2 views
15

Я пытаюсь установить пакет ROracle на свой клиент Windows 7. У меня установлен клиент Oracle Instant и Rtools, пакет DBI istalled, установлена ​​переменная окружения OCI32_LIB. Но когда я пытаюсь установить из командной строки:Как установить пакет ROracle на Windows 7?

C:\Temp>R CMD INSTALL --build ROracle_1.1-10.tar.gz 
* installing to library 'C:/Users/myaccount/Documents/R/win-library/3.0' 
* installing *source* package 'ROracle' ... 
** package 'ROracle' successfully unpacked and MD5 sums checked 
ERROR: configuration failed for package 'ROracle' 
* removing 'C:/Users/myaccount/Documents/R/win-library/3.0/ROracle' 

C:\Temp> 

Когда я пытаюсь установить из источника:

> install.packages("ROracle",type = "source") 
Warning in install.packages : 
    package ‘ROracle’ is not available (for R version 3.0.0) 
Installing package into ‘C:/Users/myaccount/Documents/R/win-library/3.0’ 
(as ‘lib’ is unspecified) 
trying URL 'http://cran.at.r-project.org/src/contrib/ROracle_1.1-10.tar.gz' 
Content type 'application/x-gzip' length 168193 bytes (164 Kb) 
opened URL 
downloaded 164 Kb 

* installing *source* package 'ROracle' ... 
** package 'ROracle' successfully unpacked and MD5 sums checked 
ERROR: configuration failed for package 'ROracle' 
* removing 'C:/Users/myaccount/Documents/R/win-library/3.0/ROracle' 
Warning in install.packages : 
    running command '"C:/PROGRA~1/R/R-30~1.0/bin/i386/R" CMD INSTALL -l "C:\Users\myaccount\Documents\R\win-library\3.0" C:\Users\myaccount\AppData\Local\Temp\RtmpGggbyp/downloaded_packages/ROracle_1.1-10.tar.gz' had status 1 
Warning in install.packages : 
    installation of package ‘ROracle’ had non-zero exit status 

The downloaded source packages are in 
    ‘C:\Users\myaccount\AppData\Local\Temp\RtmpGggbyp\downloaded_packages’ 

Что я должен делать, как поступить?

+3

У меня не было никаких проблем с установкой ROracle на окнах 7. У меня есть и установленные дб и клиент 10g. Похоже, вы задали соответствующие переменные, поэтому попробуйте установить из источника, и, возможно, мы получим более информативное сообщение об ошибке 'install.packages (« ROracle », type =« source »)'. – haki

+0

Спасибо, я также попытался установить из исходного кода, но получил то же сообщение об ошибке. – Matkrupp

+0

можете ли вы профилировать какой-либо файл журнала или файл дампа в папке? – haki

ответ

2

У меня была именно эта проблема. Это было вызвано тем, что при установке RTools я не проверял флажок «edit PATH». Я удалил RTools и снова установил его, на этот раз убедившись, что флажок установлен, и он работал в первый раз! Надеюсь это поможет.

+0

Спасибо, теперь он генерирует эту ошибку: Oracle Client Shared Library 32-bit - 11.2.0.1.0 Работает в режиме мгновенного клиента. ОШИБКА: не удается найти C: \ app \ myaccount \ product \ 11.2.0 \ client_1/sdk/include или Oracle Client. Установите OCI_INC, чтобы указать его местоположение. ОШИБКА: сбой конфигурации для пакета «ROracle» – Matkrupp

+0

У меня нет такой папки в моем клиенте oracle. – Matkrupp

+0

Я не совсем уверен, что предложить - я запускаю полную установку Oracle, а не Instant Client, поэтому я не сталкивался с этой проблемой. Прочитали ли вы руководство по установке? http://cran.r-project.org/web/packages/ROracle/INSTALL – user1578653

5

У меня была и эта точная проблема, в том числе ошибка OCI_INC. Они действительно говорят об этом в файле INSTALL в пакете .tar.gz, там вы можете прочитать больше.

Вы должны установить переменную OCI_INC в include каталоге, как это:

set OCI_INC=C:\oracle\product\11.2.0\client_2\oci\include 

Или везде, где ваш файл. Здесь была моя полная настройка, чтобы установить все из командной строки с правами администратора.

set OCI_LIB64=C:\oracle\product\11.2.0\client_2\BIN 
set OCI_INC=C:\oracle\product\11.2.0\client_2\oci\include 
set PATH=C:\oracle\product\11.2.0\client_2\BIN;C:\Rtools\bin;c:\Rtools\gcc-4.6.3\bin;%PATH% 
"C:/PROGRA~1/R/R-30~1.1/bin/x64/R" CMD INSTALL --build "C:/Your/Path/To/ROracle_1.1-10.tar.gz" 

Кроме того, убедитесь, чтобы изменить client_2 к client_1 и OCI_LIB64 к OCI_LIB32, если вы пытаетесь сделать 32-битную систему.

2

У меня была аналогичная ошибка при попытке установить ROracle из источника. 1

После того, как я осмотрел немного, мне пришлось взять на себя то, что упомянули другие, а также перезагрузить tar.gz. Когда я дважды проверял размер загрузки, он был 10 КБ вместо 234 КБ.

  1. Re-Скачать источник из: http://cran.r-project.org/web/packages/ROracle/index.html
  2. Обновлены следующие экологические Varibles в окнах

    SET PATH = C: \ Rtools \ Bin; C: \ Rtools \ GCC-4.6.3;% PATH% SET OCI_INC = C: \ Oracle_11G_ClientR2 \ продукт \ 11.2.0 \ client_1 \ \ OCI включают SET OCI_LIB32 = C: \ Oracle_11G_ClientR2 \ продукт \ 11.2.0 \ client_1 \ БИН SET OCI_LIB64 = C: \ Oracle_11G_ClientR2 \ продукта \ 11.2.0 \ client_1 \ BIN R CMD INSTALL --build "C: \ temp \ ROracle_1.1-12.tar.GZ»

  3. Вывод должен выглядеть следующим образом: samplecmdoutput

1 Вот что предыдущая ошибка выглядела так:

C:\Temp>R CMD INSTALL --build "C:\\temp\\ROracle_1.1-12.tar.gz" 
Error in getOctD(x, offset, len) : invalid octal digit 
+0

Файл ROracle_1.1-12.tar.gz содержит инструкции для компиляции исходных файлов, но с Windows это плохо работает. Более простой выбор - загрузить предварительно скомпилированный пакет с http://www.oracle.com/technetwork/database/database-technologies/r/roracle/downloads/index.html –

+0

Предварительно скомпилированный пакет для x64 без i386/x32. Чтобы преодолеть это, вы должны строить из источника до 32 бит. (Ошибка: пакет «ROracle» не установлен для «arch = i386») https://community.oracle.com/thread/3551343 – ddisqq

17

От https://gist.github.com/jgilfillan/7b0281067ed9feb4a71c

Скачать двоичном с оракулом : http://www.oracle.com/technetwork/database/database-technologies/r/roracle/downloads/index.html

Прогон следующую команду в г, подставляя путь к файлу:

setwd('xxxxx') # set to path of download 
install.packages('ROracle_1.2-1.zip', repos = NULL) 

Затем загрузить библиотеку и использовать пакет - вы, возможно, придется изменить XXXX на то, что в ваших TNS имен:

library('ROracle') 
drv <- dbDriver("Oracle") 
con <- dbConnect(drv, "USER GOES HERE", "PASSWORD GOES HERE", dbname='XXX') 

тестовое соединение:

dbReadTable(con, 'DUAL') 

Обратите внимание, что это также было подтверждено на работу о n Windows 10.

1

После выполнения шагов (выделено красным цветом). Я также выполнял команды ниже на R. enter image description here enter image description here Итак, все прошло хорошо на 64-разрядной 64-битной среде R 3.4 64 бит Windows 7. enter image description here enter image description here

Sys.setenv(OCI_LIB64="C:/Oracle/instantclient_12_2/") 
Sys.setenv(OCI_INC="C:/Oracle/product/11.2.0/client_1/oci/include") 
install.packages("ROracle", dep=T) 
Смежные вопросы