Re: libocci - when is it linked into Oracle.so?

[email protected] (E R)
Newsgroups perl.dbi.users
Message-ID <[email protected]>
fwiw, here's my perl -V output:

Summary of my perl5 (revision 5 version 12 subversion 2) configuration:

  Platform:
    osname=linux, osvers=2.6.18-164.10.1.el5pae, archname=i686-linux
    uname='linux foo.com 2.6.18-164.10.1.el5pae #1 smp thu jan 7
20:37:53 est 2010 i686 athlon i386 gnulinux '
    config_args='-des -Dprefix=/builds/2010-11-12.001/perl'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=undef, usemultiplicity=undef
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=undef, use64bitall=undef, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-fno-strict-aliasing -pipe -fstack-protector
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2',
    cppflags='-fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include'
    ccversion='', gccversion='4.1.2 20080704 (Red Hat 4.1.2-46)',
gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=4, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -fstack-protector -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -lgdbm -ldl -lm -lcrypt -lutil -lc
    perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
    libc=/lib/libc-2.5.so, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version='2.5'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -O2 -L/usr/local/lib
-fstack-protector'


Characteristics of this binary (from libperl):
  Compile-time options: PERL_DONT_CREATE_GVSV PERL_MALLOC_WRAP
                        USE_LARGE_FILES USE_PERLIO USE_PERL_ATOF
  Built under linux


On Fri, Jan 28, 2011 at 10:27 AM, E R <[email protected]> wrote:
> Figured this one out:
>
> The Makefile.PL for DBD::Oracle looks for makefiles in your oracle
> home directory.
> If it finds one, it scans the makefile for compiler options used to
> build Oracle applications.
>
> In my case it found demo.mk which includes the option -locci.
>
> What is interesting is that the makefiles are not present in the
> instant client zip archives that Oracle makes available. So it appears
> that libocci will get included or not depending on what kind of client
> distribution you have.
>
> Is anyone having problems using DBD::Oracle in a mod_perl environment
> when libocci is _not_ linked in? I'm using perl 5.12.2 without
> threading enabled.
>
> On Tue, Nov 23, 2010 at 10:28 AM, John Scoles <[email protected]> wrote:
>>  On 22/11/2010 2:58 PM, E R wrote:
>>>
>>> Hi,
>>>
>>> I have two DBD/Oracle/Oracle.so shared libraries. In one case ldd
>>> reports that libocci is linked in, and in another case libocci doesn't
>>> show up.
>>>
>>> I don't know how the first version was built, but the second one was
>>> build using:
>>>
>>> export ORACLE_HOME=... # path the instantclient 10.2.0.4
>>> export LB_LIBRARY_PATH="$ORACLE_HOME:"
>>>
>>> perl Makefile.PL
>>> make
>>> make install
>>>
>>> (I.e., a pretty generic build)
>>>
>>> Does anyone know how libocci gets picked up when building Oracle.so? I
>>> am using instantclient version 10.2.0.4
>>>
>>> Thanks,
>>> ER
>>
>> I know in the instant client the  so files are all squished together into a
>>
>> libclntsh.so.xx.x
>>
>> file where xx.x is the version number of the client.  ie libclntsh.so.10.1
>> for ic 10.1
>>
>> What I have to do to get DBD::Oracle to compile is create a symbolic link to
>> it like this
>>
>> ln -s libclntsh.so.10.1  libclntsh.so
>>
>> if you happen to already have a link like that in your path someplace it
>> could be a problem.
>>
>> I have noticed on some other OS system that all the .so files are place in a
>> common folder one I cannot find or do not have access to in the Makeifle.PL
>>
>> you might want to look into that.
>>
>> After the compile it no longer needs the link.
>>
>> Hope this helps
>>
>> Cheers
>> John Scoles
>>
>>
>>
>>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.