Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> AW: :Oracle
Hi Mladen
I gave it a shot, since my solution so far was to run a DBD::Proxy = server on Windows (same machine, ActiveState Perl 5.8.3) and communicate = with Oracle from cygwin (same machine) via DBD Proxy.
I followed the instructions in Jared's Perl for Oracle DBAs book. After = setting my environment and creating the stubs using dll tool, my (for = now bad) results look like this:
$ perl Makefile.PL
Using DBI 1.40 (for perl 5.008002 on cygwin-thread-multi-64int) =
installed in /usr/lib/perl5/site_perl/5.8.2/cygwin-thread-mul
Configuring DBD::Oracle ...
>>> Remember to actually *READ* the README file! Especially if you have any problems.
Using Oracle in c:/oracle/ora9
WARNING: could not decode oracle version from c:/oracle/ora9/orainst/inspdver, or c:/oracle/ora9/install/unix.rgs or from ORACLE_HOME path c:/oracle/ora9. Oracle version based logic in Makefile.PL may produce erroneous results.
Found oci directory
Using OCI directory 'oci'
Checking for functioning wait.ph
System: perl5.008002 cygwin_nt-5.0 troubardix 1.5.5(0.9432) 2003-09-20 =
16:31 i686 unknown unknown cygwin
Compiler: gcc -O2 -DPERL_USE_SAFE_PUTENV -fno-strict-aliasing
Linker: /usr/bin/ld
Sysliblist:
Warning: If you have problems you may need to rebuild perl with =
-Uusemymalloc.
Checking if your kit is complete...
Looks good
LD_RUN_PATH=3Dc:/oracle/ora9/lib:c:/oracle/ora9/rdbms/lib
Using DBD::Oracle 1.15.
Using DBD::Oracle 1.15.
Using DBI 1.40 (for perl 5.008002 on cygwin-thread-multi-64int) \
installed in /usr/lib/perl5/site_perl/5.8.2/cygwin-thread-multi-64int
Writing Makefile for DBD::Oracle
*************************************************************************= ******************
Next step (I tried make anyway, eventhough perl couldn't figure out my = Oracle version):
$ make
cp Oracle.pm blib/lib/DBD/Oracle.pm
cp oraperl.ph blib/lib/oraperl.ph
cp dbdimp.h blib/arch/auto/DBD/Oracle/dbdimp.h
cp ocitrace.h blib/arch/auto/DBD/Oracle/ocitrace.h
cp Oraperl.pm blib/lib/Oraperl.pm
cp Oracle.h blib/arch/auto/DBD/Oracle/Oracle.h
cp lib/DBD/Oracle/GetInfo.pm blib/lib/DBD/Oracle/GetInfo.pm
cp mk.pm blib/arch/auto/DBD/Oracle/mk.pm
/usr/bin/perl.exe -p -e "s/~DRIVER~/Oracle/g" = /usr/lib/perl5/site_perl/5.8.2/cygwin-thread-multi-64int/auto/DBI/Driver.= xst > Oracle.xsi
/usr/bin/perl.exe /usr/lib/perl5/5.8.2/ExtUtils/xsubpp -typemap = /usr/lib/perl5/5.8.2/ExtUtils/typemap -typemap typemap Oracle.xs > = Oracle.xsc && mv Oracle.xsc Oracle.c
gcc -c -Ic:/oracle/ora9/oci/include -Ic:/oracle/ora9/rdbms/demo =
-I/usr/lib/perl5/site_perl/5.8.2/cygwin-thread-multi-64int/auto/DBI =
-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -DUSEIMPORTLIB -O2 =
-DVERSION=3D\"1.15\" -DXS_VERSION=3D\"1.15\" =
"-I/usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE" -DUTF8_SUPPORT =
Oracle.c
gcc -c -Ic:/oracle/ora9/oci/include -Ic:/oracle/ora9/rdbms/demo =
-I/usr/lib/perl5/site_perl/5.8.2/cygwin-thread-multi-64int/auto/DBI =
-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -DUSEIMPORTLIB -O2 =
-DVERSION=3D\"1.15\" -DXS_VERSION=3D\"1.15\" =
"-I/usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE" -DUTF8_SUPPORT =
dbdimp.c
dbdimp.c: In function `ora_db_login6': dbdimp.c:307: warning: cast to pointer from integer of different size dbdimp.c:317: warning: cast to pointer from integer of different size dbdimp.c:321: warning: cast to pointer from integer of different size dbdimp.c:325: warning: cast to pointer from integer of different size dbdimp.c: In function `dbd_rebind_ph_char': dbdimp.c:1145: warning: cast from pointer to integer of different size
gcc -c -Ic:/oracle/ora9/oci/include -Ic:/oracle/ora9/rdbms/demo =
-I/usr/lib/perl5/site_perl/5.8.2/cygwin-thread-multi-64int/auto/DBI =
-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -DUSEIMPORTLIB -O2 =
-DVERSION=3D\"1.15\" -DXS_VERSION=3D\"1.15\" =
"-I/usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE" -DUTF8_SUPPORT =
oci7.c
gcc -c -Ic:/oracle/ora9/oci/include -Ic:/oracle/ora9/rdbms/demo =
-I/usr/lib/perl5/site_perl/5.8.2/cygwin-thread-multi-64int/auto/DBI =
-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -DUSEIMPORTLIB -O2 =
-DVERSION=3D\"1.15\" -DXS_VERSION=3D\"1.15\" =
"-I/usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE" -DUTF8_SUPPORT =
oci8.c
Running Mkbootstrap for DBD::Oracle ()
chmod 644 Oracle.bs
rm -f blib/arch/auto/DBD/Oracle/Oracle.dll
LD_RUN_PATH=3D"c:/oracle/ora9/lib:c:/oracle/ora9/rdbms/lib" ld2 -s =
-L/usr/local/lib Oracle.o dbdimp.o oci7.o oci8.o -o =
blib/arch/auto/DBD/Oracle/Oracle.dll =
/usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE/libperl.dll.a =
-L/usr/src/DBD-Oracle-1.15 -loci
gcc -shared -o Oracle.dll -Wl,--out-implib=3DlibOracle.dll.a =
-Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--stack,8388608 \
-s -L/usr/local/lib Oracle.o dbdimp.o oci7.o oci8.o =
/usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE/libperl.dll.a =
-L/usr/src/DBD-Oracle-1.15 -loci
Creating library file: libOracle.dll.a
Oracle.o(.text+0x7961):Oracle.c: undefined reference to =
`_OCILobWriteAppend'
collect2: ld returned 1 exit status
perlld: *** system() failed to execute
gcc -shared -o Oracle.dll -Wl,--out-implib=3DlibOracle.dll.a =
-Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--stack,8388608 \
-s -L/usr/local/lib Oracle.o dbdimp.o oci7.o oci8.o =
/usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE/libperl.dll.a =
-L/usr/src/DBD-Oracle-1.15 -loci
make: *** [blib/arch/auto/DBD/Oracle/Oracle.dll] Error 1
... the END.
Looks like the linker wasn't THAT successful. I'll try to look into = Makefile.PL and give it a little hint about the version or copy = .../orainst/inspdver and .../install/unix.rgs from a UNIX machine to my = laptop.
Did you get any further?
Regards,
Stefan
-----Urspr=FCngliche Nachricht-----
Von: oracle-l-bounce_at_freelists.org
[mailto:oracle-l-bounce_at_freelists.org]Im Auftrag von Mladen Gogala
Gesendet: Monday, May 03, 2004 10:57 PM
An: Multiple recipients of list ORACLE-L
Betreff: DBD::Oracle
Has anybody been successful with building DBD::Oracle under Cygwin =
environment?
DBI-1.42 wasn't making any problems, but I couldn't build DBD::Oracle =
client with
neither 10g client nor with the 9.2 client. Any tips/tricks would be =
extremly helpful.
--=20
Mladen Gogala
Oracle DBA
Note:
This message is for the named person's use only. It may contain =
confidential, proprietary or legally privileged information. No =
confidentiality or privilege is waived or lost by any mistransmission. =
If you receive this message in error, please immediately delete it and =
all copies of it from your system, destroy any hard copies of it and =
notify the sender. You must not, directly or indirectly, use, disclose, =
distribute, print, or copy any part of this message if you are not the =
intended recipient. Wang Trading LLC and any of its subsidiaries each =
reserve the right to monitor all e-mail communications through its =
networks.
Any views expressed in this message are those of the individual sender, =
except where the message states otherwise and the sender is authorized =
to state them to be the views of any such entity.
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.htmlput 'unsubscribe' in the subject line.
-----------------------------------------------------------------
----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to: oracle-l-request_at_freelists.org