gpt4 book ai didi

ruby - 如何安装ruby-oci8?

转载 作者:数据小太阳 更新时间:2023-10-29 06:29:25 31 4
gpt4 key购买 nike

我正在尝试在 OS X 上安装 ruby​​-oci8。

我试过使用和不使用 sudo 进行安装。

没有 sudo 的错误消息:

gem install ruby-oci8
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /Library/Ruby/Gems/1.8 directory.

sudo 的错误消息:

sudo gem install ruby-oci8
Password:
Building native extensions. This could take a while...
ERROR: Error installing ruby-oci8:
ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
checking for load library path...
DYLD_LIBRARY_PATH is not set.
checking for cc... ok
checking for gcc... yes
checking for LP64... yes
checking for sys/types.h... yes
checking for ruby header... ok
*** 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
--without-make-prog
--srcdir=.
--curdir
--ruby=/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
--with-instant-client
--without-instant-client
./oraconf.rb:887:in `get_home': RuntimeError (RuntimeError)
from ./oraconf.rb:703:in `initialize'
from ./oraconf.rb:319:in `new'
from ./oraconf.rb:319:in `get'
from extconf.rb:18

错误信息:

Set the environment variable ORACLE_HOME if Oracle Full Client.
Append the path of Oracle client libraries to DYLD_LIBRARY_PATH if Oracle Instant Client.

The 'sudo' command unset some environment variables for security reasons.
Pass required varialbes as follows
sudo env DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH /usr/bin/gem install ruby-oci8
or
sudo env ORACLE_HOME=$ORACLE_HOME /usr/bin/gem install ruby-oci8


Backtrace:
./oraconf.rb:887:in `get_home'
./oraconf.rb:703:in `initialize'
./oraconf.rb:319:in `new'
./oraconf.rb:319:in `get'
extconf.rb:18

See:
* http://ruby-oci8.rubyforge.org/en/HowToInstall.html
* http://ruby-oci8.rubyforge.org/en/ReportInstallProblem.html

最佳答案

为 10.9/10.10/10.11OSX Mavericks/Yosemite/El Capitan 安装 ruby​​-oci8 的略微更新版本 - 逐步:

  1. 转到此处:http://www.oracle.com/technetwork/topics/intel-macsoft-096467.html
  2. 下载 64 位版本的 instantclient-sqlplus、instantclient-sdk、instantclient-basic - 32 位版本不适用于 OSX 10.9
  3. 在/opt/oracle 创建目录
  4. 首先解压缩 instantclient-basic,移动到/opt/oracle(应该添加一个文件夹 - 类似于/opt/oracle/instantclient_11_2/)
  5. 解压 instantclient-sdk 并将其内容移动到/opt/oracle/instantclient_11_2/
  6. 解压缩 instantclient-sqlplus 并将其内容移动到/opt/oracle/instantclient_11_2/
  7. 打开终端(如果您还没有)并输入...
  8. DYLD_LIBRARY_PATH=/opt/oracle/instantclient_11_2 export DYLD_LIBRARY_PATH
  9. ORACLE_HOME=/opt/oracle/instantclient_11_2 export ORACLE_HOME
  10. cd/opt/oracle/instantclient_11_2
  11. ln -s libclntsh.dylib.11.1 libclntsh.dylib(创建符号链接(symbolic link))
  12. 环境
  13. 验证 DYLD_LIBRARY_PATH=/opt/oracle/instantclient_11_2(确保在 instantclient_11_2 之后没有尾随/)
  14. 验证 ORACLE_HOME=/opt/oracle/instantclient_11_2
  15. gem 安装 ruby​​-oci8

应该在那之后工作。文件结构应与此类似:

enter image description here

关于ruby - 如何安装ruby-oci8?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11894194/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com