Итак, следуя различным урокам, я установил следующие гемы на окно Windows:
"activerecord-oracle_enhanced-adapter"
и
"ruby-oci8"
, а также изменил свой файл database.yml, чтобы он выгляделнапример:
oracle_development:
adapter: oracle_enhanced
database: 127.0.0.0:1521/sid
username: uid
password: pid
Ruby OCI8 не будет компилироваться (учебник по адресу: [rails wiki] [1] подразумевал, что это может иметь место, и предложил вместо этого использовать версию 1.0.4).Итак, 1.0.4 компилируется и устанавливается просто отлично, но как только он у меня появляется (и загружается файл oci.dll в Ruby), я запускаю быстрый тест из консоли Rails и вижу:
Loading development environment (Rails 2.3.5)
OracleConnector.test RuntimeError: Пожалуйста, установите адаптер oracle_enhanced: gem install activerec
ord-oracle_enhanced-adapter
(ОШИБКА: ruby-oci8 версии 1.0.7 устарела. Пожалуйста, установите ruby-oci8 версии 2.0.3 или новее.)
Я не совсем уверен, что делать.Во-первых, у меня определенно есть «activerecord-oracle_enhanced-adapter», и я не уверен, почему он думает иначе.Для двоих я понятия не имею, как получить более новую копию OCI8 ... когда я пытаюсь, я вижу:
C:\Documents and Settings\jschultz\workspace\OracleTest>gem install ruby-oci8
Building native extensions. This could take a while...
ERROR: Error installing ruby-oci8:
ERROR: Failed to build gem native extension.
C:/Ruby/bin/ruby.exe extconf.rb
checking for load library path...
PATH...
checking C:\Ruby\bin... yes
C:/Ruby/bin/oci.dll looks like a full client.
checking for cc... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--srcdir=.
--curdir
--ruby=C:/Ruby/bin/ruby
--with-instant-client
--without-instant-client
./oraconf.rb:562:in `check_cc': RuntimeError (RuntimeError)
from ./oraconf.rb:549:in `init'
from ./oraconf.rb:680:in `initialize'
from ./oraconf.rb:345:in `new'
from ./oraconf.rb:345:in `get'
from extconf.rb:18
ng
---------------------------------------------------
Error Message:
C compiler doesn't work correctly.
Backtrace:
./oraconf.rb:562:in `check_cc'
./oraconf.rb:549:in `init'
./oraconf.rb:680:in `initialize'
./oraconf.rb:345:in `new'
./oraconf.rb:345:in `get'
extconf.rb:18
---------------------------------------------------
See:
* http://ruby-oci8.rubyforge.org/en/HowToInstall.html
* http://ruby-oci8.rubyforge.org/en/ReportInstallProblem.html
[1]: http://wiki.rubyonrails.org/database-support/oracle
И я понятия не имею, что с этим делать ...