Connecting to Oracle (Solaris Sparc 10)

My company's System-admin installed Ruby and Gems (using Sun Coolstack
package) and I have sudo access to ruby, gem etc. Now I need to get my
app to talk to oracle db (through network).
From what I understand, it requires three steps:
Step 1: Install oracle instant client ( I installed it in my ~/oracle/
instantclient_11_1)
Step2: Install OCI8 libraries (this is where I am stuck). Here is the
error message:
***********ERROR MESSAGE***************

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

/opt/coolstack/bin/ruby extconf.rb
checking for load library path...
  LD_LIBRARY_PATH_32 is not set.
  LD_LIBRARY_PATH is not set.
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
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=/opt/coolstack/bin/ruby
        --with-instant-client
        --without-instant-client
./oraconf.rb:557:in `check_cc': RuntimeError (RuntimeError)
        from ./oraconf.rb:544:in `init'
        from ./oraconf.rb:674:in `initialize'
        from ./oraconf.rb:345:in `new'
        from ./oraconf.rb:345:in `get'
        from extconf.rb:17
ng

<snip>

Does it work if you try "sudo gem install ruby-oci -- --with-instant-
client" ?

If not, try setting $ORACLE_HOME to wherever you installed the instant
client and try again.

If that still doesn't work, this blog post may be of interest:

http://ktulu.com.ar/blog/2009/01/30/installing-ruby-oci8-with-oracle-instant-client-11g/

(In short, it looks like the directory layout changed in 11g)

Regards,

Dan

My company's System-admin installed Ruby and Gems (using Sun Coolstack
package) and I have sudo access to ruby, gem etc. Now I need to get my
app to talk to oracle db (through network).
From what I understand, it requires three steps:
Step 1: Install oracle instant client ( I installed it in my ~/oracle/
instantclient_11_1)
Step2: Install OCI8 libraries (this is where I am stuck). Here is the
error message:
***********ERROR MESSAGE***************

bash-3.00$ sudo gem install ruby-oci8
Building native extensions. This could take a while...
checking for cc... *** extconf.rb failed ***

This is because you're missing Ruby dev libraries.

In my setup I have these set:

LD_LIBRARY_PATH=/usr/local/lib
ORACLE_HOME=/home/oracle

C compiler doesn't work correctly.

Looks like you need a compiler too.

Sorry, what did you mean by this?

Can you become root using `sudo su -` ?

Failing that you can augment your PATH by doing:

export PATH="/path/to/new/stuff:$PATH"

No, I can't become su - root. If it's something very critical, I can
request SA (root) for his time. But I don't know when he'd be free.

So, my questions:
1. Do you think it's a compiler (cc) issue ? It does say "C compiler
doesn't work correctly". I already have gcc in path. I also created a
symbolic link cc -> gcc
2. It does find Oracle Instant Client in the directory
bash-3.00$ echo $LD_LIBRARY_PATH
/usr/local/ssl/lib/:/usr/local/lib/:/export/home/roradmin1/oracle/
instantclient_11_1
bash-3.00$

bash-3.00$ echo $LD_LIBRARY_PATH_32
/usr/local/ssl/lib/:/usr/local/lib/:/export/home/roradmin1/oracle/
instantclient_11_1

Thanks.,

What's your CC environment variable set to? Does it point to your gcc?

There is no CC enviornment variable. cc is in path
cc (pointing to gcc) is located at /export/home/roradmin1/bin
and it is in PATH.

There is no CC enviornment variable.
I have cc-> gcc in /export/home/roradmin1/bin
and /export/home/roradmin1/bin is in PATH environment variable.

There is no CC enviornment variable.
I have cc-> gcc in /export/home/roradmin1/bin
and /export/home/roradmin1/bin is in PATH environment variable.

There is no CC enviornment variable.

Export one then.

I have cc-> gcc in /export/home/roradmin1/bin
and /export/home/roradmin1/bin is in PATH environment variable.

Does gcc actually work?

Thanks for your reply. I installed Sun Studio 12 and put it in path.
But I still get the same error message

Just to let everyone know. This problem has been FIXED. Here is what I
did:
1. install Sun Studio 12.1
2. edited rbconfig.rb and included path of sun's "cc" compiler that
came with Sun Studio.
and then it started working fine.