RubyでOracleにつなぎたくてruby-oci8をインストールしようとしたら、すんなりできなかったのでメモ。
環境
Ubuntu 20.04
Ruby 2.7.1
まず普通に
$ gem install ruby-oci8
Building native extensions. This could take a while...
ERROR: Error installing ruby-oci8:
ERROR: Failed to build gem native extension.
~略~
Error Message:
Set the environment variable ORACLE_HOME if Oracle Full Client.
Append the path of Oracle client libraries to LD_LIBRARY_PATH if Oracle Instant Client.
See:
* http://www.rubydoc.info/github/kubo/ruby-oci8/file/docs/install-full-client.md for Oracle full client
* http://www.rubydoc.info/github/kubo/ruby-oci8/file/docs/install-instant-client.md for Oracle instant client
* http://www.rubydoc.info/github/kubo/ruby-oci8/file/docs/install-on-osx.md for OS X
* http://www.rubydoc.info/github/kubo/ruby-oci8/file/docs/report-installation-issue.md to report an issue.
エラー出ました。
OracleClientがインストールされてないよー って怒られました。
Seeって書いてあるところ見てみたんですけど、私の読解力じゃ意味が解らなかった・・・
Oracleのサイトにインストール方法があったのでそちらを実施!
https://www.oracle.com/jp/database/technologies/instant-client/linux-x86-64-downloads.html
一番下に記載されてます。
.bash_profile にexport hogehogeして source .bash_profile
もう一度 gem install ruby-oci8
Error Message:
'/opt/oracle/instantclient_19_8/sdk/include/oci.h' does not exist.
Install 'Instant Client SDK'.
あれ、oci.hがない?
SDKをダウンロードして、ディレクトリに突っ込んでみた
$gem install ruby-oci8
Building native extensions. This could take a while...
Successfully installed ruby-oci8-2.2.8
Parsing documentation for ruby-oci8-2.2.8
Installing ri documentation for ruby-oci8-2.2.8
Done installing documentation for ruby-oci8 after 0 seconds
1 gem installed
無事完了!