2009-12-04 21 views
11

J'essaie d'installer DBD::Oracle en utilisant la coque CPAN dans Strawberry Perl. J'ai d'abord rencontré une erreur car le Makefile ne pouvait pas localiser une bibliothèque OCI, j'ai donc installé le client instantané d'Oracle. Je pensais que cela permettrait de résoudre le problème, mais maintenant je reçois un grand mélange d'erreurs et d'avertissements de Oracle.h, dbdimp.h, Oracle.c, Oracle.xsi, et Oracle.xs.Comment installer DBD :: Oracle dans Strawberry Perl

Des suggestions pour savoir comment procéder? Est-il possible qu'il y ait un problème avec le logiciel Oracle existant sur mon ordinateur? Je suis assez nouveau à Perl, donc toute aide est appréciée.

Modifier - Je compris toute la production ci-dessous:

cpan> install DBD::Oracle 
Database was generated on Fri, 04 Dec 2009 16:12:46 GMT 
Running install for module 'DBD::Oracle' 
Running make for P/PY/PYTHIAN/DBD-Oracle-1.23.tar.gz 
Checksum for C:\strawberry\cpan\sources\authors\id\P\PY\PYTHIAN\DBD-Oracle-1.23.tar.gz ok 
Scanning cache C:\strawberry\cpan\build for sizes 
...............................................................-------------DONE 

    CPAN.pm: Going to build P/PY/PYTHIAN/DBD-Oracle-1.23.tar.gz 

Multiple copies of Driver.xst found in: C:/strawberry/perl/site/lib/auto/DBI/ C:\strawberry\perl\vendor\lib/auto/DBI/ at Makefile.PL line 37 
Using DBI 1.609 (for perl 5.010001 on MSWin32-x86-multi-thread) installed in C:/strawberry/perl/site/lib/auto/DBI/ 
Argument "6.55_02" isn't numeric in numeric ge (>=) at Makefile.PL line 61. 

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

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

Installing on a MSWin32, Ver#5.1 
Using Oracle in C:/ORACLE/ORA90 
DEFINE _SQLPLUS_RELEASE = "900010001" (CHAR) 
Oracle version 9.0.1.0 (9.0) 
Found oci directory 
Using OCI directory 'oci' 

Checking for functioning wait.ph 


System: perl5.010001 Win32 strawberryperl 5.10.1.0 #1 30 i386 
Compiler: gcc -s -O2 -s -O2 -DWIN32 -DHAVE_DES_FCRYPT -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -DPERL_ 
MSVCRT_READFIX 
Linker:  not found 
Sysliblist: 

Checking if your kit is complete... 
Looks good 
LD_RUN_PATH=C:/ORACLE/ORA90/lib:C:/ORACLE/ORA90/rdbms/lib 
Using DBD::Oracle 1.23. 
Using DBD::Oracle 1.23. 
Multiple copies of Driver.xst found in: C:/strawberry/perl/site/lib/auto/DBI/ C:\strawberry\perl\vendor\lib/auto/DBI/ at Makefile.PL line 1696 
Using DBI 1.609 (for perl 5.010001 on MSWin32-x86-multi-thread) installed in C:/strawberry/perl/site/lib/auto/DBI/ 
Writing Makefile for DBD::Oracle 

*** If you have problems... 
    read all the log printed above, and the README and README.help.txt files. 
    (Of course, you have read README by now anyway, haven't you?) 

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/Object.pm blib\lib\DBD\Oracle\Object.pm 
cp mk.pm blib\arch\auto\DBD\Oracle/mk.pm 
cp lib/DBD/Oracle/GetInfo.pm blib\lib\DBD\Oracle\GetInfo.pm 
C:\strawberry\perl\bin\perl.exe -p -e "s/~DRIVER~/Oracle/g" C:\strawberry\perl\site\lib\auto\DBI\Driver.xst > Oracle.xsi 
C:\strawberry\perl\bin\perl.exe C:\strawberry\perl\lib\ExtUtils\xsubpp -typemap C:\strawberry\perl\lib\ExtUtils\typemap -typemap typemap Oracle.xs > 
Oracle.xsc && C:\strawberry\perl\bin\perl.exe -MExtUtils::Command -e "mv" -- Oracle.xsc Oracle.c 
gcc -c -IC:/ORACLE/ORA90/oci/include -IC:/ORACLE/ORA90/rdbms/demo -IC:\strawberry\perl\site\lib\auto\DBI  -s -O2 -DWIN32 -DHAVE_DES_FCRYPT -DUSE 
_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -DPERL_MSVCRT_READFIX -s -O2  -DVERSION=\"1.23\" -DXS_VERSION=\ 
"1.23\" "-IC:\strawberry\perl\lib\CORE" -Wall -Wno-comment -DUTF8_SUPPORT -DORA_OCI_VERSION=\"9.0.1.0\" Oracle.c 
In file included from Oracle.xs:1: 
Oracle.h:37:17: oci.h: No such file or directory 
Oracle.h:39:20: ocidfn.h: No such file or directory 
Oracle.h:40:18: orid.h: No such file or directory 
Oracle.h:41:17: ori.h: No such file or directory 
In file included from Oracle.h:54, 
       from Oracle.xs:1: 
dbdimp.h:16: error: syntax error before "OCIEnv" 
dbdimp.h:16: warning: no semicolon at end of struct or union 
dbdimp.h:23: error: syntax error before '}' token 
dbdimp.h:37: error: syntax error before "OCIEnv" 
dbdimp.h:37: warning: no semicolon at end of struct or union 
dbdimp.h:38: warning: type defaults to `int' in declaration of `errhp' 
dbdimp.h:38: warning: data definition has no type or storage class 
dbdimp.h:39: error: syntax error before '*' token 
dbdimp.h:39: warning: type defaults to `int' in declaration of `srvhp' 
dbdimp.h:39: warning: data definition has no type or storage class 
dbdimp.h:40: error: syntax error before '*' token 
dbdimp.h:40: warning: type defaults to `int' in declaration of `svchp' 
dbdimp.h:40: warning: data definition has no type or storage class 
dbdimp.h:41: error: syntax error before '*' token 
dbdimp.h:41: warning: type defaults to `int' in declaration of `authp' 
dbdimp.h:41: warning: data definition has no type or storage class 
dbdimp.h:51: error: syntax error before '}' token 
dbdimp.h:66: error: syntax error before "OCIEnv" 
dbdimp.h:66: warning: no semicolon at end of struct or union 
dbdimp.h:67: warning: type defaults to `int' in declaration of `errhp' 
dbdimp.h:67: warning: data definition has no type or storage class 
dbdimp.h:68: error: syntax error before '*' token 
dbdimp.h:68: warning: type defaults to `int' in declaration of `srvhp' 
dbdimp.h:68: warning: data definition has no type or storage class 
dbdimp.h:69: error: syntax error before '*' token 
dbdimp.h:69: warning: type defaults to `int' in declaration of `svchp' 
dbdimp.h:69: warning: data definition has no type or storage class 
dbdimp.h:70: error: syntax error before '*' token 
dbdimp.h:70: warning: type defaults to `int' in declaration of `stmhp' 
dbdimp.h:70: warning: data definition has no type or storage class 
dbdimp.h:71: error: syntax error before '*' token 
dbdimp.h:71: warning: type defaults to `int' in declaration of `dschp' 
dbdimp.h:71: warning: data definition has no type or storage class 
dbdimp.h:121: error: syntax error before '}' token 
dbdimp.h:143: error: syntax error before "OCIParam" 
dbdimp.h:143: warning: no semicolon at end of struct or union 
dbdimp.h:144: warning: type defaults to `int' in declaration of `parmap' 
dbdimp.h:144: warning: data definition has no type or storage class 
dbdimp.h:145: error: syntax error before '*' token 
dbdimp.h:145: warning: type defaults to `int' in declaration of `tdo' 
dbdimp.h:145: warning: data definition has no type or storage class 
dbdimp.h:146: error: syntax error before "typecode" 
dbdimp.h:146: warning: type defaults to `int' in declaration of `typecode' 
dbdimp.h:146: warning: data definition has no type or storage class 
dbdimp.h:147: error: syntax error before "col_typecode" 
dbdimp.h:147: warning: type defaults to `int' in declaration of `col_typecode' 
dbdimp.h:147: warning: data definition has no type or storage class 
dbdimp.h:148: error: syntax error before "element_typecode" 
dbdimp.h:148: warning: type defaults to `int' in declaration of `element_typecode' 
dbdimp.h:148: warning: data definition has no type or storage class 
dbdimp.h:149: error: syntax error before '*' token 
dbdimp.h:149: warning: type defaults to `int' in declaration of `obj_ref' 
dbdimp.h:149: warning: data definition has no type or storage class 
dbdimp.h:150: error: syntax error before '*' token 
dbdimp.h:150: warning: type defaults to `int' in declaration of `obj_ind' 
dbdimp.h:150: warning: data definition has no type or storage class 
dbdimp.h:151: error: syntax error before '*' token 
dbdimp.h:151: warning: type defaults to `int' in declaration of `obj_value' 
dbdimp.h:151: warning: data definition has no type or storage class 
dbdimp.h:152: error: syntax error before '*' token 
dbdimp.h:152: warning: type defaults to `int' in declaration of `obj_type' 
dbdimp.h:152: warning: data definition has no type or storage class 
dbdimp.h:159: error: syntax error before '}' token 
dbdimp.h:166: error: syntax error before "OCIParam" 
dbdimp.h:166: warning: no semicolon at end of struct or union 
dbdimp.h:167: warning: type defaults to `int' in declaration of `defnp' 
dbdimp.h:167: warning: data definition has no type or storage class 
dbdimp.h:199: error: syntax error before '}' token 
dbdimp.h:221: error: syntax error before "OCIBind" 
dbdimp.h:221: warning: no semicolon at end of struct or union 
dbdimp.h:238: error: syntax error before '*' token 
dbdimp.h:238: warning: type defaults to `int' in declaration of `array_indicators' 
dbdimp.h:238: warning: data definition has no type or storage class 
dbdimp.h:246: error: conflicting types for 'name' 
dbdimp.h:178: error: previous declaration of 'name' was here 
dbdimp.h:247: error: syntax error before '}' token 
dbdimp.h:284: error: syntax error before "OCILobLocator" 
dbdimp.h:299: error: syntax error before "OCIError" 
dbdimp.h:333: error: syntax error before "OCIBind" 
dbdimp.h:335: error: syntax error before "OCIBind" 
dbdimp.h:338: error: syntax error before "OCIDefine" 
Oracle.c: In function `XS_DBD__Oracle_constant': 
Oracle.c:74: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle_ORA_OCI': 
Oracle.c:108: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle_ora_env_var': 
Oracle.c:131: warning: unused variable `Perl___notused' 
In file included from Oracle.c:179: 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h: In function `dbdxst_bind_params': 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h:60: error: dereferencing pointer to incomplete type 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h:61: error: dereferencing pointer to incomplete type 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h:65: error: dereferencing pointer to incomplete type 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h:66: error: dereferencing pointer to incomplete type 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h:67: error: dereferencing pointer to incomplete type 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h: In function `dbdxst_fetchall_arrayref': 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h:93: error: dereferencing pointer to incomplete type 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h:94: error: dereferencing pointer to incomplete type 
C:/strawberry/perl/site/lib/auto/DBI/Driver_xst.h:101: error: dereferencing pointer to incomplete type 
Oracle.c: In function `XS_DBD__Oracle__dr_dbixs_revision': 
Oracle.c:185: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__db__login': 
Oracle.c:278: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__db_selectall_arrayref': 
./Oracle.xsi:152: error: dereferencing pointer to incomplete type 
Oracle.c:320: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__db_selectrow_arrayref': 
./Oracle.xsi:196: error: dereferencing pointer to incomplete type 
Oracle.c:387: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__db_commit': 
./Oracle.xsi:275: error: dereferencing pointer to incomplete type 
./Oracle.xsi:275: error: dereferencing pointer to incomplete type 
Oracle.c:549: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__db_rollback': 
./Oracle.xsi:285: error: dereferencing pointer to incomplete type 
./Oracle.xsi:285: error: dereferencing pointer to incomplete type 
Oracle.c:572: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__db_disconnect': 
./Oracle.xsi:295: error: dereferencing pointer to incomplete type 
./Oracle.xsi:300: error: dereferencing pointer to incomplete type 
./Oracle.xsi:300: error: dereferencing pointer to incomplete type 
./Oracle.xsi:302: error: dereferencing pointer to incomplete type 
./Oracle.xsi:304: error: dereferencing pointer to incomplete type 
./Oracle.xsi:308: error: dereferencing pointer to incomplete type 
./Oracle.xsi:308: error: dereferencing pointer to incomplete type 
./Oracle.xsi:308: error: dereferencing pointer to incomplete type 
Oracle.c:595: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__db_STORE': 
./Oracle.xsi:322: error: dereferencing pointer to incomplete type 
Oracle.c:629: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__db_FETCH': 
./Oracle.xsi:334: error: dereferencing pointer to incomplete type 
Oracle.c:657: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__db_DESTROY': 
./Oracle.xsi:345: error: dereferencing pointer to incomplete type 
./Oracle.xsi:347: error: dereferencing pointer to incomplete type 
./Oracle.xsi:347: error: dereferencing pointer to incomplete type 
./Oracle.xsi:348: error: dereferencing pointer to incomplete type 
./Oracle.xsi:353: error: dereferencing pointer to incomplete type 
./Oracle.xsi:354: error: dereferencing pointer to incomplete type 
./Oracle.xsi:354: error: dereferencing pointer to incomplete type 
./Oracle.xsi:354: error: dereferencing pointer to incomplete type 
./Oracle.xsi:355: error: dereferencing pointer to incomplete type 
./Oracle.xsi:356: error: dereferencing pointer to incomplete type 
./Oracle.xsi:358: error: dereferencing pointer to incomplete type 
./Oracle.xsi:359: error: dereferencing pointer to incomplete type 
./Oracle.xsi:370: error: dereferencing pointer to incomplete type 
./Oracle.xsi:371: error: dereferencing pointer to incomplete type 
./Oracle.xsi:372: error: dereferencing pointer to incomplete type 
./Oracle.xsi:382: error: dereferencing pointer to incomplete type 
./Oracle.xsi:382: error: dereferencing pointer to incomplete type 
./Oracle.xsi:382: error: dereferencing pointer to incomplete type 
Oracle.c:682: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st__prepare': 
Oracle.c:830: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_rows': 
Oracle.c:869: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_bind_param': 
Oracle.c:951: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_bind_param_inout': 
Oracle.c:999: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__st_execute': 
./Oracle.xsi:586: error: dereferencing pointer to incomplete type 
./Oracle.xsi:587: error: dereferencing pointer to incomplete type 
Oracle.c:1053: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_fetchrow_arrayref': 
Oracle.c:1125: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_fetchrow_array': 
Oracle.c:1150: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_fetchall_arrayref': 
Oracle.c:1185: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__st_finish': 
./Oracle.xsi:669: error: dereferencing pointer to incomplete type 
./Oracle.xsi:670: error: dereferencing pointer to incomplete type 
./Oracle.xsi:674: error: dereferencing pointer to incomplete type 
./Oracle.xsi:677: error: dereferencing pointer to incomplete type 
./Oracle.xsi:677: error: dereferencing pointer to incomplete type 
./Oracle.xsi:677: error: dereferencing pointer to incomplete type 
Oracle.c:1226: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_blob_read': 
Oracle.c:1262: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__st_STORE': 
./Oracle.xsi:717: error: dereferencing pointer to incomplete type 
Oracle.c:1306: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__st_FETCH_attrib': 
./Oracle.xsi:734: error: dereferencing pointer to incomplete type 
Oracle.c:1334: warning: unused variable `Perl___notused' 
./Oracle.xsi: In function `XS_DBD__Oracle__st_DESTROY': 
./Oracle.xsi:745: error: dereferencing pointer to incomplete type 
./Oracle.xsi:747: error: dereferencing pointer to incomplete type 
./Oracle.xsi:747: error: dereferencing pointer to incomplete type 
./Oracle.xsi:748: error: dereferencing pointer to incomplete type 
./Oracle.xsi:753: error: dereferencing pointer to incomplete type 
./Oracle.xsi:754: error: dereferencing pointer to incomplete type 
./Oracle.xsi:754: error: dereferencing pointer to incomplete type 
./Oracle.xsi:754: error: dereferencing pointer to incomplete type 
./Oracle.xsi:755: error: dereferencing pointer to incomplete type 
./Oracle.xsi:756: error: dereferencing pointer to incomplete type 
./Oracle.xsi:758: error: dereferencing pointer to incomplete type 
./Oracle.xsi:759: error: dereferencing pointer to incomplete type 
./Oracle.xsi:760: error: dereferencing pointer to incomplete type 
./Oracle.xsi:768: error: dereferencing pointer to incomplete type 
./Oracle.xsi:768: error: dereferencing pointer to incomplete type 
./Oracle.xsi:768: error: dereferencing pointer to incomplete type 
Oracle.c:1362: warning: unused variable `Perl___notused' 
Oracle.xs: In function `XS_DBD__Oracle__st_ora_stmt_type': 
Oracle.xs:105: error: dereferencing pointer to incomplete type 
Oracle.c:1418: warning: unused variable `Perl___notused' 
Oracle.xs: In function `XS_DBD__Oracle__st_ora_stmt_type_name': 
Oracle.xs:114: error: dereferencing pointer to incomplete type 
Oracle.c:1443: warning: unused variable `Perl___notused' 
Oracle.xs: In function `XS_DBD__Oracle__st_ora_scroll_position': 
Oracle.xs:127: error: dereferencing pointer to incomplete type 
Oracle.c:1470: warning: unused variable `Perl___notused' 
Oracle.xs: In function `XS_DBD__Oracle__st_ora_fetch_scroll': 
Oracle.xs:140: error: dereferencing pointer to incomplete type 
Oracle.xs:141: error: dereferencing pointer to incomplete type 
Oracle.c:1495: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_ora_bind_param_inout_array': 
Oracle.c:1526: warning: unused variable `Perl___notused' 
Oracle.xs: In function `XS_DBD__Oracle__st_ora_fetch': 
Oracle.xs:189: error: dereferencing pointer to incomplete type 
Oracle.xs:189: error: dereferencing pointer to incomplete type 
Oracle.xs:189: error: dereferencing pointer to incomplete type 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: warning: left-hand operand of comma expression has no effect 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: warning: left-hand operand of comma expression has no effect 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: error: dereferencing pointer to incomplete type 
Oracle.xs:192: warning: left-hand operand of comma expression has no effect 
Oracle.xs:196: error: dereferencing pointer to incomplete type 
Oracle.xs:198: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:217: error: dereferencing pointer to incomplete type 
Oracle.xs:219: error: dereferencing pointer to incomplete type 
Oracle.xs:219: error: dereferencing pointer to incomplete type 
Oracle.c:1572: warning: unused variable `Perl___notused' 
Oracle.xs: In function `XS_DBD__Oracle__st_ora_execute_array': 
Oracle.xs:234: error: dereferencing pointer to incomplete type 
Oracle.xs:235: error: dereferencing pointer to incomplete type 
Oracle.c:1631: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__st_cancel': 
Oracle.c:1678: warning: unused variable `Perl___notused' 
Oracle.xs: In function `XS_DBD__Oracle__db_ora_ping': 
Oracle.xs:273: warning: implicit declaration of function `OCIServerVersion' 
Oracle.xs:273: error: dereferencing pointer to incomplete type 
Oracle.xs:273: error: dereferencing pointer to incomplete type 
Oracle.xs:273: error: `OCI_HTYPE_SVCCTX' undeclared (first use in this function) 
Oracle.xs:273: error: (Each undeclared identifier is reported only once 
Oracle.xs:273: error: for each function it appears in.) 
Oracle.xs:273: error: dereferencing pointer to incomplete type 
Oracle.xs:274: error: `OCI_SUCCESS' undeclared (first use in this function) 
Oracle.c:1699: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__db_reauthenticate': 
Oracle.c:1736: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__db_ora_lob_write': 
Oracle.c:1767: error: `OCILobLocator' undeclared (first use in this function) 
Oracle.c:1767: error: `locator' undeclared (first use in this function) 
Oracle.c:1782: error: syntax error before ')' token 
Oracle.xs:307: error: `SQLCS_IMPLICIT' undeclared (first use in this function) 
Oracle.xs:314: warning: implicit declaration of function `OCILobCharSetForm' 
Oracle.xs:314: error: dereferencing pointer to incomplete type 
Oracle.xs:314: error: dereferencing pointer to incomplete type 
Oracle.xs:314: error: dereferencing pointer to incomplete type 
Oracle.xs:314: error: dereferencing pointer to incomplete type 
Oracle.xs:315: error: `OCI_SUCCESS' undeclared (first use in this function) 
Oracle.xs:316: error: dereferencing pointer to incomplete type 
Oracle.xs:330: error: `SQLCS_NCHAR' undeclared (first use in this function) 
Oracle.xs:332: warning: implicit declaration of function `OCILobWrite' 
Oracle.xs:332: error: dereferencing pointer to incomplete type 
Oracle.xs:332: error: dereferencing pointer to incomplete type 
Oracle.xs:332: error: `OCI_ONE_PIECE' undeclared (first use in this function) 
Oracle.xs:332: error: dereferencing pointer to incomplete type 
Oracle.xs:332: error: dereferencing pointer to incomplete type 
Oracle.xs:338: error: dereferencing pointer to incomplete type 
Oracle.c:1759: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__db_ora_lob_append': 
Oracle.c:1845: error: `OCILobLocator' undeclared (first use in this function) 
Oracle.c:1845: error: `locator' undeclared (first use in this function) 
Oracle.c:1862: error: syntax error before ')' token 
Oracle.xs:363: error: `SQLCS_IMPLICIT' undeclared (first use in this function) 
Oracle.xs:370: error: dereferencing pointer to incomplete type 
Oracle.xs:370: error: dereferencing pointer to incomplete type 
Oracle.xs:370: error: dereferencing pointer to incomplete type 
Oracle.xs:370: error: dereferencing pointer to incomplete type 
Oracle.xs:371: error: `OCI_SUCCESS' undeclared (first use in this function) 
Oracle.xs:372: error: dereferencing pointer to incomplete type 
Oracle.xs:386: error: `SQLCS_NCHAR' undeclared (first use in this function) 
Oracle.xs:387: warning: implicit declaration of function `OCILobWriteAppend' 
Oracle.xs:387: error: dereferencing pointer to incomplete type 
Oracle.xs:387: error: dereferencing pointer to incomplete type 
Oracle.xs:387: error: `OCI_ONE_PIECE' undeclared (first use in this function) 
Oracle.xs:387: error: dereferencing pointer to incomplete type 
Oracle.xs:387: error: dereferencing pointer to incomplete type 
Oracle.xs:392: error: dereferencing pointer to incomplete type 
Oracle.xs:357: warning: unused variable `startp' 
Oracle.c:1837: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__db_ora_lob_read': 
Oracle.c:1923: error: `OCILobLocator' undeclared (first use in this function) 
Oracle.c:1923: error: `locator' undeclared (first use in this function) 
Oracle.c:1938: error: syntax error before ')' token 
Oracle.xs:417: error: `SQLCS_IMPLICIT' undeclared (first use in this function) 
Oracle.xs:427: error: dereferencing pointer to incomplete type 
Oracle.xs:427: error: dereferencing pointer to incomplete type 
Oracle.xs:427: error: dereferencing pointer to incomplete type 
Oracle.xs:427: error: dereferencing pointer to incomplete type 
Oracle.xs:428: error: `OCI_SUCCESS' undeclared (first use in this function) 
Oracle.xs:429: error: dereferencing pointer to incomplete type 
Oracle.xs:433: warning: implicit declaration of function `OCILobRead' 
Oracle.xs:433: error: dereferencing pointer to incomplete type 
Oracle.xs:433: error: dereferencing pointer to incomplete type 
Oracle.xs:433: error: dereferencing pointer to incomplete type 
Oracle.xs:433: error: dereferencing pointer to incomplete type 
Oracle.xs:438: error: dereferencing pointer to incomplete type 
Oracle.xs:445: error: `SQLCS_NCHAR' undeclared (first use in this function) 
Oracle.c:1915: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__db_ora_lob_trim': 
Oracle.c:1997: error: `OCILobLocator' undeclared (first use in this function) 
Oracle.c:1997: error: `locator' undeclared (first use in this function) 
Oracle.c:2006: error: syntax error before ')' token 
Oracle.xs:461: warning: implicit declaration of function `OCILobTrim' 
Oracle.xs:461: error: dereferencing pointer to incomplete type 
Oracle.xs:461: error: dereferencing pointer to incomplete type 
Oracle.xs:461: error: dereferencing pointer to incomplete type 
Oracle.xs:461: error: dereferencing pointer to incomplete type 
Oracle.xs:462: error: `OCI_SUCCESS' undeclared (first use in this function) 
Oracle.xs:463: error: dereferencing pointer to incomplete type 
Oracle.c:1989: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__db_ora_lob_length': 
Oracle.c:2039: error: `OCILobLocator' undeclared (first use in this function) 
Oracle.c:2039: error: `locator' undeclared (first use in this function) 
Oracle.c:2048: error: syntax error before ')' token 
Oracle.xs:479: warning: implicit declaration of function `OCILobGetLength' 
Oracle.xs:479: error: dereferencing pointer to incomplete type 
Oracle.xs:479: error: dereferencing pointer to incomplete type 
Oracle.xs:479: error: dereferencing pointer to incomplete type 
Oracle.xs:479: error: dereferencing pointer to incomplete type 
Oracle.xs:480: error: `OCI_SUCCESS' undeclared (first use in this function) 
Oracle.xs:481: error: dereferencing pointer to incomplete type 
Oracle.c:2031: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__db_ora_lob_chunk_size': 
Oracle.c:2081: error: `OCILobLocator' undeclared (first use in this function) 
Oracle.c:2081: error: `locator' undeclared (first use in this function) 
Oracle.c:2090: error: syntax error before ')' token 
Oracle.xs:498: warning: implicit declaration of function `OCILobGetChunkSize' 
Oracle.xs:498: error: dereferencing pointer to incomplete type 
Oracle.xs:498: error: dereferencing pointer to incomplete type 
Oracle.xs:498: error: dereferencing pointer to incomplete type 
Oracle.xs:498: error: dereferencing pointer to incomplete type 
Oracle.xs:499: error: `OCI_SUCCESS' undeclared (first use in this function) 
Oracle.xs:500: error: dereferencing pointer to incomplete type 
Oracle.c:2073: warning: unused variable `Perl___notused' 
Oracle.c: In function `XS_DBD__Oracle__dr_init_oci': 
Oracle.c:2115: warning: unused variable `Perl___notused' 
Oracle.c: In function `boot_DBD__Oracle': 
Oracle.c:2157: error: `OCI_FETCH_RELATIVE' undeclared (first use in this function) 
Oracle.c:2171: error: `OCI_FETCH_FIRST' undeclared (first use in this functio 
+3

L'erreur que vous montrez dit essentiellement seulement que la compilation a échoué; les erreurs/avertissements * avant * qui dira pourquoi. – ysth

Répondre

4

DBD :: Oracle est notoirement difficile à compiler, multiplié par Windows, et vous feriez mieux de ne pas le faire si vous pouvez l'éviter. Malheureusement ActiveState does not supply a PPM for it for licensing reasons ni l'autre PPM repositories j'ai regardé à travers. Bien que sa rumeur que ActivePerl 5.10.0.1003 comes with DBD-Oracle.

Si votre serveur Oracle prend en charge ODBC, vous pouvez lui parler en utilisant DBD::ODBC.

Si vous voulez essayer, voici quelques special instructions for installing DBD::Oracle on Strawberry Perl qui peuvent être utiles.

+0

J'ai suivi votre suggestion sur l'utilisation d'ODBC. J'ai correctement mis en place une source de données ODBC dans Windows et utilisé DBD :: ODBC pour se connecter à la base de données.Merci! – indiguy

+0

Ce n'est pas une rumeur. Et je viens d'utiliser les ppm d'ActiveState pour passer à DBD-Oracle 1.23. – runrig

+0

Bien que je ne sais pas pourquoi il n'est pas listé à UWinn: http://cpan.uwinnipeg.ca/search?query=dbd-oracle&mode=dist – runrig

2

Si vous ne disposez pas de tous la source Oracle fichiers (* .h, * .c), vous pouvez installer DBD :: Oracle via ppm, tout comme ActiveState. Ou copiez les fichiers de la bibliothèque de la distribution ActiveState.

+1

Bon conseil ... après avoir lutté pendant une heure, j'ai juste besoin de ppm installer http://trouchelle.com/ppm10/unstable/DBD-Oracle.ppd – Pat

+0

Je l'ai eu en utilisant cela: http: // garygoog .wordpress.com/2011/04/02/facile-à-installer-dbdoracle-pour-fraise-perl/ – Richard

2

J'ai documenté ce qui a fonctionné pour moi sur Win32 here sur mon blog. En fait, tout s'est bien déroulé, sauf que le processus DBI Make n'a pas détecté ma version Oracle Client installée correctement. Un petit déchiffrement du fichier make et j'ai vu qu'il y avait un paramètre pour spécifier explicitement la version. J'ai dû exécuter manuellement les commandes make et install mais tout s'est bien passé.

J'ai essayé d'utiliser des modules pré-compilés, mais ils ont été compilés avec une version spécifique de Strawberry Perl. Je pense avoir trouvé un DBI 5.12 compilé pour Oracle et il s'est plaint quand j'ai essayé de l'utiliser avec le dernier Perl 5.16 Strawberry, c'est pourquoi j'ai choisi la route de construction manuelle. A partir de maintenant, je vais probablement copier mon répertoire binaire c: \ perl sur d'autres machines dont j'ai besoin, définir des variables d'environnement et rouler avec.

1

Strawberry Perl 5.20 (depuis mai 2014) est livré avec DBD :: Oracle, tant que vous installez la version 11.x instantclient, il fonctionne hors de la boîte. Voir http://strawberryperl.com/release-notes/5.20.0.1-64bit.html

nouvellement ajouté DBD :: Oracle - vous devez installer Oracle 64 bits 11.x instantanée client et assurez-vous que vous avez OCI.DLL dans votre PATH