RE: DBD installtion 11G R2 (64Bit) & 32 bit perl version

2013-05-23 Thread John Scoles

 That will be a bit of a problem and a bugger to fix.
 
I can only offer a general solution as each case is different but the short 
answer is yes you can run 32bit perl and 64 bit oracle together.
 
1) you have to get the 32bit oracle instant client for the version of oracle 
you want to use
2) that 32 bit client has to work on the 32 bit platform (test this with the 
sqlplus that come with it)
3) you will have to recompile reinstall your DBD for the 32 bit instanctclient 
with 'make'  
4) when you run your perl make sure it uses the ORACLE_HOME of the 32 bit 
instant client
 
cheers
John
 
 
From: anoop.ku...@nawras.om
To: dbi-users@perl.org
CC: go...@bildbasen.kiruna.se; jlip...@coefmd3.uswc.uswest.com; 
z50...@mip.lasc.lockheed.com; verb...@be.oracle.com; mou...@hometown.com; 
stephen.zan...@mckesson.com; earle.niet...@es.unisys.com; 
desca...@hermetica.com; carl...@tis.llnl.gov; d...@fndapl.fnal.gov; 
asloo...@alfabank.ru; t...@cpan.org; byter...@cpan.org; yan...@cpan.org; 
mjev...@cpan.org
Subject: RE: DBD installtion 11G R2 (64Bit) & 32 bit perl version
Date: Thu, 23 May 2013 14:03:09 +








Hi Support,
 
Please help me to solve this..

LD_RUN_PATH="/u01/app/oracle/product/11.2.0/dbhome_1/lib:/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib"
 ld  -bhalt:4 -G -bI:/usr/opt/perl5/lib/5.10.1/aix-thread-multi/CORE/perl.exp 
-bE:Oracle.exp -bnoentry -lpthreads -lc -lm -L/usr/local/lib Oracle.o  dbdimp.o 
 oci8.o /lib/crt0_64.o  -o blib/arch/auto/DBD/Oracle/Oracle.so   
-L/u01/app/oracle/product/11.2.0/dbhome_1/lib/ -lclntsh -lld -lm -ldl -lc -lm 
-lpthreads -lodm -lbsd_r -lld -lperfstat -lm -lpthreads 

ld: 0711-736 ERROR: Input file /lib/crt0_64.o:
XCOFF64 object files are not allowed in 32-bit mode.
make: 1254-004 The error code from the last command is 8.
 
 
Stop.
 
 
After researching I could find this ,, But issue is that with 11gR2 onwards 
lib32 is not installing by default so need to install and configure seperatly 
its very difficuilt task for DBA..
 
Is DBD 64bit is available??
 
The problem looks like Perl and DBI run in 32-bit mode, but Oracle 9i
installs
as
64-bit.  (Oracle 8 installed as 32-bit.)  I saved the following email
with the
solution
in my bag of tricks.  This message was for Solaris, which is what I am
using.
A
week or so ago, it also worked for hpux.  Hopefully it will work for you
on
AIX.
=
Our solution: 
afer Makefile.PL creates the makefile, edit it in vi.
Replace '911/lib' with '911/lib32' everywhere
Replace 'rdbms/lib' with 'rdbms/lib32' everywhere.
Then do your make.
To really fix this will take someone who knows Makefile.PL to apply a
patch
detect the 64bit version of Oracle9i(the presense of lib32's is a tip
off).
In the mean time we applied a quick script to do it in our

install/distribution scripts.

 
 
 





 


 


 





 


From: Anoop Kumar Paramesweran


Sent: Thursday, May 23, 2013 4:25 PM

To: 'dbi-users@perl.org'

Subject: DBD error


 
Hi Support,
 
I am receiving following error while installing DBD Perl module on IBM AIX 7.1 
.Please help me to solve this..
 
bash-3.2# perl Makefile.PL 
Using DBI 1.625 (for perl 5.010001 on aix-thread-multi) installed in 
/usr/opt/perl5/lib/site_perl/5.10.1/aix-thread-multi/auto/DBI/
 
Configuring DBD::Oracle for perl 5.010001 on aix (aix-thread-multi)
 
Remember to actually *READ* the README file! Especially if you have any 
problems.
 
Installing on a aix, Ver#5.3
Using Oracle in /u01/app/oracle/product/11.2.0/dbhome_1
DEFINE _SQLPLUS_RELEASE = "1102000300" (CHAR)
Oracle version 11.2.0.3 (11.2)
Found /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
Using /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
Your LIBPATH env var is set to '/u01/app/oracle/product/11.2.0/dbhome_1/lib'
Reading /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
Reading /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/env_rdbms.mk
Deleting -b64 from COMPOBJS because -b64 doesn't exist.
WARNING: Oracle /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk 
doesn't define a 'build' rule.
 
WARNING: I will now try to guess how to build and link DBD::Oracle for you.
 This kind of guess work is very error prone and Oracle-version 
sensitive.
 It is possible that it won't be supported in future versions of 
DBD::Oracle.
 *PLEASE* notify dbi-users about exactly _why_ you had to build it this 
way.
 
Found header files in /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/public.
 
client_version=11.2
 
 
DEFINE= -DUTF8_SUPPORT -DORA_OCI_VERSION=\"11.2.0.3\" -DORA_OCI_102 
-DORA_OCI_112
 
 
Checking for functioning wait.ph
 
 
System: perl5.010001 aix dennis01 3 5 00c72e9a4c00 
Compiler:   xlc_r -q32 -O -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE 
-qmaxmem=-

Re: DBD installtion 11G R2 (64Bit) & 32 bit perl version

2013-05-23 Thread Jonathan Leffler
You will need a 64-bit Perl (and 64-bit DBI) to work with 64-bit Oracle and
hence 64-bit DBD::Oracle.

Or you can go 32-bit for everything if there's a 32-bit Oracle client you
can install.

What you can't do is have some 32-bit code and some 64-bit code built into
(or loaded into, since most of this is dynamically loaded) the same
executable.  All 32-bit or all 64-bit; not a mixture.


(Addressee list trimmed.)



On Thu, May 23, 2013 at 7:03 AM, Anoop Kumar Paramesweran <
anoop.ku...@nawras.om> wrote:

>  Hi Support,
>
>
>
> Please help me to solve this..
>
> 
> LD_RUN_PATH="/u01/app/oracle/product/11.2.0/dbhome_1/lib:/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib"
> ld  -bhalt:4 -G
> -bI:/usr/opt/perl5/lib/5.10.1/aix-thread-multi/CORE/perl.exp -bE:Oracle.exp
> -bnoentry -lpthreads -lc -lm -L/usr/local/lib Oracle.o  dbdimp.o  oci8.o
> /lib/crt0_64.o  -o blib/arch/auto/DBD/Oracle/Oracle.so
> -L/u01/app/oracle/product/11.2.0/dbhome_1/lib/ -lclntsh -lld -lm -ldl -lc
> -lm -lpthreads -lodm -lbsd_r -lld -lperfstat -lm -lpthreads
>
> ld: 0711-736 ERROR: Input file /lib/crt0_64.o:
>
> XCOFF64 object files are not allowed in 32-bit mode.
>
> make: 1254-004 The error code from the last command is 8.
>
>
>
>
>
> Stop.
>
>
>
>
>
> After researching I could find this ,, But issue is that with 11gR2
> onwards lib32 is not installing by default so need to install and configure
> seperatly its very difficuilt task for DBA..
>
>
>
> Is DBD 64bit is available??
>
>
>
> The problem looks like Perl and DBI run in 32-bit mode, but Oracle 9i
>
> installs
>
> as
>
> 64-bit.  (Oracle 8 installed as 32-bit.)  I saved the following email
>
> with the
>
> solution
>
> in my bag of tricks.  This message was for Solaris, which is what I am
>
> using.
>
> A
>
> week or so ago, it also worked for hpux.  Hopefully it will work for you
>
> on
>
> AIX.
>
> =
>
> Our solution: 
>
> afer Makefile.PL creates the makefile, edit it in vi.
>
> Replace '911/lib' with '911/lib32' everywhere
>
> Replace 'rdbms/lib' with 'rdbms/lib32' everywhere.
>
> Then do your make.
>
> To really fix this will take someone who knows Makefile.PL to apply a
>
> patch
>
> detect the 64bit version of Oracle9i(the presense of lib32's is a tip
>
> off).
>
> In the mean time we applied a quick script to do it in our
>
> install/distribution scripts.
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> *From:* Anoop Kumar Paramesweran
> *Sent:* Thursday, May 23, 2013 4:25 PM
> *To:* 'dbi-users@perl.org'
> *Subject:* DBD error
>
>
>
> Hi Support,
>
>
>
> I am receiving following error while installing DBD Perl module on IBM AIX
> 7.1 .Please help me to solve this..
>
>
>
> bash-3.2# perl Makefile.PL
>
> Using DBI 1.625 (for perl 5.010001 on aix-thread-multi) installed in
> /usr/opt/perl5/lib/site_perl/5.10.1/aix-thread-multi/auto/DBI/
>
>
>
> Configuring DBD::Oracle for perl 5.010001 on aix (aix-thread-multi)
>
>
>
> Remember to actually *READ* the README file! Especially if you have any
> problems.
>
>
>
> Installing on a aix, Ver#5.3
>
> Using Oracle in /u01/app/oracle/product/11.2.0/dbhome_1
>
> DEFINE _SQLPLUS_RELEASE = "1102000300" (CHAR)
>
> Oracle version 11.2.0.3 (11.2)
>
> Found /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
>
> Using /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
>
> Your LIBPATH env var is set to
> '/u01/app/oracle/product/11.2.0/dbhome_1/lib'
>
> Reading /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
>
> Reading /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/env_rdbms.mk
>
> Deleting -b64 from COMPOBJS because -b64 doesn't exist.
>
> WARNING: Oracle /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/
> ins_rdbms.mk doesn't define a 'build' rule.
>
>
>
> WARNING: I will now try to guess how to build and link DBD::Oracle for you.
>
>  This kind of guess work is very error prone and Oracle-version
> sensitive.
>
>  It is possible that it won't be supported in future versions of
> DBD::Oracle.
>
>  *PLEASE* notify dbi-users about exactly _why_ you had to build it
> this way.
>
>
>
> Found header files in /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/public.
>
>
>
> client_version=11.2
>
>
>
>
>
> DEFINE= -DUTF8_SUPPORT -DORA_OCI_VERSION=\"11.2.0.3\" -DORA_OCI_102
> -DORA_OCI_112
>
>
>
>
>
> Checking for functioning wait.ph
>
>
>
>
>
> System: perl5.010001 aix dennis01 3 5 00c72e9a4c00
>
> Compiler:   xlc_r -q32 -O -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE
> -qmaxmem=-1 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT
> -qlanglvl=extended -I/usr/local/include -q32 -D_LARGE_FILES -qlonglong
>
> Linker: /usr/bin/ld
>
> Sysliblist: /lib/crt0_64.o -ldl -lc -lm -lpthreads -lodm -lbsd_r -lld
> -lperfstat
>
> Oracle makefiles would have used these definitions but we override them:
>
>   CC:   $(ORACLE_HOME)/bin/oraxlc $(ORAXLCFLAGS)
>
>   CFLAGS:   $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\
>
> $(SH

RE: DBD installtion 11G R2 (64Bit) & 32 bit perl version

2013-05-23 Thread Anoop Kumar Paramesweran
Hi Support,

Please help me to solve this..

LD_RUN_PATH="/u01/app/oracle/product/11.2.0/dbhome_1/lib:/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib"
 ld  -bhalt:4 -G -bI:/usr/opt/perl5/lib/5.10.1/aix-thread-multi/CORE/perl.exp 
-bE:Oracle.exp -bnoentry -lpthreads -lc -lm -L/usr/local/lib Oracle.o  dbdimp.o 
 oci8.o /lib/crt0_64.o  -o blib/arch/auto/DBD/Oracle/Oracle.so   
-L/u01/app/oracle/product/11.2.0/dbhome_1/lib/ -lclntsh -lld -lm -ldl -lc -lm 
-lpthreads -lodm -lbsd_r -lld -lperfstat -lm -lpthreads
ld: 0711-736 ERROR: Input file /lib/crt0_64.o:
XCOFF64 object files are not allowed in 32-bit mode.
make: 1254-004 The error code from the last command is 8.


Stop.


After researching I could find this ,, But issue is that with 11gR2 onwards 
lib32 is not installing by default so need to install and configure seperatly 
its very difficuilt task for DBA..

Is DBD 64bit is available??

The problem looks like Perl and DBI run in 32-bit mode, but Oracle 9i
installs
as
64-bit.  (Oracle 8 installed as 32-bit.)  I saved the following email
with the
solution
in my bag of tricks.  This message was for Solaris, which is what I am
using.
A
week or so ago, it also worked for hpux.  Hopefully it will work for you
on
AIX.
=
Our solution: 
afer Makefile.PL creates the makefile, edit it in vi.
Replace '911/lib' with '911/lib32' everywhere
Replace 'rdbms/lib' with 'rdbms/lib32' everywhere.
Then do your make.
To really fix this will take someone who knows Makefile.PL to apply a
patch
detect the 64bit version of Oracle9i(the presense of lib32's is a tip
off).
In the mean time we applied a quick script to do it in our
install/distribution scripts.










From: Anoop Kumar Paramesweran
Sent: Thursday, May 23, 2013 4:25 PM
To: 'dbi-users@perl.org'
Subject: DBD error

Hi Support,

I am receiving following error while installing DBD Perl module on IBM AIX 7.1 
.Please help me to solve this..

bash-3.2# perl Makefile.PL
Using DBI 1.625 (for perl 5.010001 on aix-thread-multi) installed in 
/usr/opt/perl5/lib/site_perl/5.10.1/aix-thread-multi/auto/DBI/

Configuring DBD::Oracle for perl 5.010001 on aix (aix-thread-multi)

Remember to actually *READ* the README file! Especially if you have any 
problems.

Installing on a aix, Ver#5.3
Using Oracle in /u01/app/oracle/product/11.2.0/dbhome_1
DEFINE _SQLPLUS_RELEASE = "1102000300" (CHAR)
Oracle version 11.2.0.3 (11.2)
Found /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
Using /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
Your LIBPATH env var is set to '/u01/app/oracle/product/11.2.0/dbhome_1/lib'
Reading /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk
Reading /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/env_rdbms.mk
Deleting -b64 from COMPOBJS because -b64 doesn't exist.
WARNING: Oracle /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk 
doesn't define a 'build' rule.

WARNING: I will now try to guess how to build and link DBD::Oracle for you.
 This kind of guess work is very error prone and Oracle-version 
sensitive.
 It is possible that it won't be supported in future versions of 
DBD::Oracle.
 *PLEASE* notify dbi-users about exactly _why_ you had to build it this 
way.

Found header files in /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/public.

client_version=11.2


DEFINE= -DUTF8_SUPPORT -DORA_OCI_VERSION=\"11.2.0.3\" -DORA_OCI_102 
-DORA_OCI_112


Checking for functioning wait.ph


System: perl5.010001 aix dennis01 3 5 00c72e9a4c00
Compiler:   xlc_r -q32 -O -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE 
-qmaxmem=-1 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT 
-qlanglvl=extended -I/usr/local/include -q32 -D_LARGE_FILES -qlonglong
Linker: /usr/bin/ld
Sysliblist: /lib/crt0_64.o -ldl -lc -lm -lpthreads -lodm -lbsd_r -lld -lperfstat
Oracle makefiles would have used these definitions but we override them:
  CC:   $(ORACLE_HOME)/bin/oraxlc $(ORAXLCFLAGS)
  CFLAGS:   $(GFLAG) $(OPTIMIZE) $(CDEBUG) $(CCFLAGS) $(PFLAGS)\
$(SHARED_CFLAG) $(USRFLAGS)
   [$(GFLAG) -O3 $(CDEBUG) -q64 -DSS_64BIT_SERVER -qwarn64 -qinfo=uni 
-DAIXRIOS -qflag=s:s -I/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/demo 
-I/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/public 
-I/u01/app/oracle/product/11.2.0/dbhome_1/plsql/public 
-I/u01/app/oracle/product/11.2.0/dbhome_1/network/public -DLDAP_CM $(LPFLAGS) 
$(PLSQLNCGFLAGS) $(USRFLAGS)]
  LDFLAGS:  -o $@ $(LDPATHFLAG)$(PRODLIBHOME) $(LDPATHFLAG)$(LIBHOME)
   [-o $@ -L/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ 
-L$(LIBHOME)]
Linking with /lib/crt0_64.o -lclntsh -brtl -lld -lm  -ldl -lc -lm -lpthreads 
-lodm -lbsd_r -lld -lperfstat -lm -lpthreads [from $(OCISHAREDLIBS)]


WARNING: You will may need to rebuild perl using the xlc_r compiler.
 The important thing is that perl and DBD::Oracle be built with the 
same compiler.
 You may also need