Windows下安装DBD::Oracle不成功

桃花岛黄岛主 2011-03-15 02:09:01
nolock_cpan> install DBD::Oracle
Use of uninitialized value in string eq at D:/Perl/site/lib/File/Spec/Win32.pm l
ine 152, <STDIN> line 1.
Going to read D:\Perl\cpan\sources\authors\01mailrc.txt.gz
CPAN: Compress::Zlib loaded ok (v1.4201)
............................................................................DONE

Use of uninitialized value in string eq at D:/Perl/site/lib/File/Spec/Win32.pm l
ine 152.
Going to read D:\Perl\cpan\sources\modules\02packages.details.txt.gz
Database was generated on Sun, 13 Mar 2011 19:27:07 GMT
CPAN: HTTP::Date loaded ok (v1.47)
...............
New CPAN.pm version (v1.9600) available.
[Currently running version is v1.9102]
You might want to try
install CPAN
reload cpan
to both upgrade CPAN.pm and run the new version without leaving
the current session.

CPAN: Time::HiRes loaded ok (v1.9707)

.............................................................DONE
Use of uninitialized value in string eq at D:/Perl/site/lib/File/Spec/Win32.pm l
ine 152.
Going to read D:\Perl\cpan\sources\modules\03modlist.data.gz
............................................................................DONE

Running install for module 'DBD::Oracle'
Running make for P/PY/PYTHIAN/DBD-Oracle-1.27.tar.gz

CPAN: checksum security checks disabled because Digest::SHA not installed.
Please consider installing the Digest::SHA module.

CPAN: Archive::Tar loaded ok (v1.3201)
DBD-Oracle-1.27/
DBD-Oracle-1.27/README.java.txt
DBD-Oracle-1.27/t/
DBD-Oracle-1.27/t/55nested.t
DBD-Oracle-1.27/t/23wide_db.t
DBD-Oracle-1.27/t/10general.t
。。。。省略
CPAN: File::Temp loaded ok (v0.18)

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

Multiple copies of Driver.xst found in: D:/Perl/site/lib/auto/DBI/ D:/Perl/lib/a
uto/DBI/ at Makefile.PL line 37
Using DBI 1.609 (for perl 5.008008 on MSWin32-x86-multi-thread) installed in D:/
Perl/site/lib/auto/DBI/

Configuring DBD::Oracle for perl 5.008008 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.00
Using Oracle in d:/oracle/ora92
DEFINE _SQLPLUS_RELEASE = "902000100" (CHAR)
Oracle version 9.2.0.1 (9.2)
Found oci directory
Using OCI directory 'oci'
Found oci/lib/MSVC/oci.lib library
Found oci/lib/MSVC/ociw32.lib library
Found oci/lib/MSVC/oramts.lib library
Found oci/lib/MSVC/oraocci9.lib library
Using oci/lib/MSVC/OCI.lib

client_version=9.2


DEFINE= -DUTF8_SUPPORT -DORA_OCI_VERSION=\"9.2.0.1\"


Checking for functioning wait.ph


System: perl5.008008
Compiler: cl -MD -Zi -DNDEBUG -O1 -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32
-D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DP
RIVLIB_LAST_IN_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPE
RL_MSVCRT_READFIX
Linker: not found
Sysliblist:

WARNING: META_MERGE is not a known parameter.
Checking if your kit is complete...
Looks good
'META_MERGE' is not a known MakeMaker parameter name.
LD_RUN_PATH=d:/oracle/ora92/lib:d:/oracle/ora92/rdbms/lib
Using DBD::Oracle 1.27.
Using DBD::Oracle 1.27.
Multiple copies of Driver.xst found in: D:/Perl/site/lib/auto/DBI/ D:/Perl/lib/a
uto/DBI/ at Makefile.PL line 1720
Using DBI 1.609 (for perl 5.008008 on MSWin32-x86-multi-thread) installed in D:/
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?)

CPAN: YAML loaded ok (v0.72)

Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.

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
D:\Perl\bin\perl.exe -p -e "s/~DRIVER~/Oracle/g" D:\Perl\site\lib\auto\D
BI\Driver.xst > Oracle.xsi
D:\Perl\bin\perl.exe D:\Perl\lib\ExtUtils\xsubpp -typemap D:\Perl\lib\E
xtUtils\typemap -typemap typemap Oracle.xs > Oracle.xsc && D:\Perl\bin\perl.exe
-MExtUtils::Command -e mv Oracle.xsc Oracle.c
cl -c -Id:/oracle/ora92/oci/include -Id:/oracle/ora92/rdbms/demo -ID:\P
erl\site\lib\auto\DBI -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -
DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DPRIVLIB_LAST_I
N_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_REA
DFIX -MD -Zi -DNDEBUG -O1 -DVERSION=\"1.27\" -DXS_VERSION=\"1.27\" "-ID:\Pe
rl\lib\CORE" -DUTF8_SUPPORT -DORA_OCI_VERSION=\"9.2.0.1\" Oracle.c
Oracle.c
cl -c -Id:/oracle/ora92/oci/include -Id:/oracle/ora92/rdbms/demo -ID:\P
erl\site\lib\auto\DBI -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -
DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DPRIVLIB_LAST_I
N_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_REA
DFIX -MD -Zi -DNDEBUG -O1 -DVERSION=\"1.27\" -DXS_VERSION=\"1.27\" "-ID:\Pe
rl\lib\CORE" -DUTF8_SUPPORT -DORA_OCI_VERSION=\"9.2.0.1\" dbdimp.c
dbdimp.c
cl -c -Id:/oracle/ora92/oci/include -Id:/oracle/ora92/rdbms/demo -ID:\P
erl\site\lib\auto\DBI -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -
DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DPRIVLIB_LAST_I
N_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_REA
DFIX -MD -Zi -DNDEBUG -O1 -DVERSION=\"1.27\" -DXS_VERSION=\"1.27\" "-ID:\Pe
rl\lib\CORE" -DUTF8_SUPPORT -DORA_OCI_VERSION=\"9.2.0.1\" oci8.c
oci8.c
oci8.c(689) : error C2065: 'OCI_ATTR_RESERVED_15' : undeclared identifier
oci8.c(689) : error C2051: case expression not constant
oci8.c(690) : error C2065: 'OCI_ATTR_RESERVED_16' : undeclared identifier
oci8.c(690) : error C2051: case expression not constant
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.
PYTHIAN/DBD-Oracle-1.27.tar.gz
nmake -- NOT OK
Running make test
Can't test without successful make
Running make install
Make had returned bad status, install seems impossible
Failed during this command:
PYTHIAN/DBD-Oracle-1.27.tar.gz : make NO


nolock_cpan>

刚学有点乱,希望朋友们帮我一把
...全文
950 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
好的,非常感谢, 先试试
fibbery 2011-03-15
  • 打赏
  • 举报
回复
这是实际需要的文件安装列表,你可以从邮件的压缩包中提取出来,当然,你也可以使用压缩包中的perl。
Installing D:\Perl\site\lib\auto\DBD\Oracle\dbdimp.h
Installing D:\Perl\site\lib\auto\DBD\Oracle\mk.pm
Installing D:\Perl\site\lib\auto\DBD\Oracle\ocitrace.h
Installing D:\Perl\site\lib\auto\DBD\Oracle\Oracle.bs
Installing D:\Perl\site\lib\auto\DBD\Oracle\Oracle.dll
Installing D:\Perl\site\lib\auto\DBD\Oracle\Oracle.exp
Installing D:\Perl\site\lib\auto\DBD\Oracle\Oracle.h
Installing D:\Perl\site\lib\auto\DBD\Oracle\Oracle.lib
Installing D:\Perl\site\lib\auto\DBD\Oracle\Oracle.pdb
Installing D:\Perl\html\bin\ora_explain.html
Installing D:\Perl\html\site\lib\Oraperl.html
Installing D:\Perl\html\site\lib\DBD\Oracle.html
Installing D:\Perl\site\lib\oraperl.ph
Installing D:\Perl\site\lib\Oraperl.pm
Installing D:\Perl\site\lib\DBD\Oracle.pm
Installing D:\Perl\site\lib\DBD\Oracle\GetInfo.pm
Installing D:\Perl\site\lib\DBD\Oracle\Object.pm
Installing D:\Perl\site\bin\ora_explain
Installing D:\Perl\site\bin\ora_explain.bat
Appending installation info to D:\Perl\lib/perllocal.pod
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
刚学,有些交流可能有些出入,哎
看着奢扣 2011-03-15
  • 打赏
  • 举报
回复
我以前搭环境perl5010 连Oracle时就记得装了个DBI 再装了个Orac 然后就能用了
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
wangkui@emagsoftware.cn


我的邮箱,非常感谢
fibbery 2011-03-15
  • 打赏
  • 举报
回复
你的Perl能否更新到最新?DBI也需要最新的,你再下载DBD-Oracle的最新版本。

要不然,我把我的打包给你传一份得了。我建议最新的DBD-Oracle还是用比较新的VC来安装。比如VC8、9都可以。VC6有点老了,不知道在编译选项上有没有不兼容的。
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
我还特意看了下环境变更PATH
这个是我的环境变量用户的
D:\Program Files\Microsoft Visual Studio\VC98\bin;D:\Program Files\Microsoft Visual Studio\Common\Tools\WinNT;D:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;D:\Program Files\Microsoft Visual Studio\Common\Tools
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 fibbery 的回复:]
PPM上也有,在图形界面中搜索Oracle,你会看到DBD-Oracle 1.21,(我的界面看到的版本是1.21)。最新源代码是1.27.
点击Mark for install,然后,再点击run marked actions执行安装。
[/Quote]

现在已经没有了
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
这是运行了Perl makefile.pl结果,我装了VC++6.0

D:\DBD-Oracle-1.22\DBD-Oracle-1.22>perl makefile.pl
Multiple copies of Driver.xst found in: D:/Perl/site/lib/auto/DBI/ D:/Perl/lib/a
uto/DBI/ at makefile.pl line 37
Using DBI 1.609 (for perl 5.008008 on MSWin32-x86-multi-thread) installed in D:/
Perl/site/lib/auto/DBI/

Configuring DBD::Oracle for perl 5.008008 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.00
Using Oracle in d:/oracle/ora92
DEFINE _SQLPLUS_RELEASE = "902000100" (CHAR)
Oracle version 9.2.0.1 (9.2)
Found oci directory
Using OCI directory 'oci'
Found oci/lib/MSVC/oci.lib library
Found oci/lib/MSVC/ociw32.lib library
Found oci/lib/MSVC/oramts.lib library
Found oci/lib/MSVC/oraocci9.lib library
Using oci/lib/MSVC/OCI.lib

Checking for functioning wait.ph


System: perl5.008008
Compiler: cl -MD -Zi -DNDEBUG -O1 -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32
-D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DP
RIVLIB_LAST_IN_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPE
RL_MSVCRT_READFIX
Linker: not found
Sysliblist:

LD_RUN_PATH=d:/oracle/ora92/lib:d:/oracle/ora92/rdbms/lib
Using DBD::Oracle 1.22.
Using DBD::Oracle 1.22.
Multiple copies of Driver.xst found in: D:/Perl/site/lib/auto/DBI/ D:/Perl/lib/a
uto/DBI/ at makefile.pl line 1693
Using DBI 1.609 (for perl 5.008008 on MSWin32-x86-multi-thread) installed in D:/
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?)


fibbery 2011-03-15
  • 打赏
  • 举报
回复
不过,也许看到的是因为我自己安装过。

记得N年前,我给ActiveState发过一封邮件,询问DBD-Oracle包的问题,得到的回复是因为版权原因,不再集成了。
fibbery 2011-03-15
  • 打赏
  • 举报
回复
PPM上也有,在图形界面中搜索Oracle,你会看到DBD-Oracle 1.21,(我的界面看到的版本是1.21)。最新源代码是1.27.
点击Mark for install,然后,再点击run marked actions执行安装。
iambic 2011-03-15
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 wang123kui 的回复:]
是的,现在我就头痛了,用PPM不会安装,用CPAN 装不成功
[/Quote]
你到底看了我5楼的回复没?
fibbery 2011-03-15
  • 打赏
  • 举报
回复
下载地址:
http://search.cpan.org/CPAN/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.27.tar.gz

首先,你要有C++编译器,Windows下一般使用VC;其次,Oracle客户端要安装好,并可以连接到数据库,Oracle的环境变量,最重要的是ORACLE_HOME要已经设置好。
一般在想到要安装DBD-Oracle包的时候,上述条件都应该满足了,这是做事的一般顺序。
然后,在解压的DBD-Oracle...目录下,执行
perl Makefile.PL
nmake
nmake test
nmake install

一般都会成功。不成功,你再贴出来错误信息。
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
是的,现在我就头痛了,用PPM不会安装,用CPAN 装不成功
iambic 2011-03-15
  • 打赏
  • 举报
回复
那个包里根本就没有DBD::Oracle这个模块。
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sunming2008 的回复:]
用PPM 我记得装的是这个
Orac
Version: alpha-1.2.6
Released: 2001-10-17
Author: Andy Duncan <andy_j_duncan@yahoo.com>
CPAN: http://search.cpan.org/dist/Orac-alpha-1.2.6/
[/Quote]

这个我安装成功了,但还是不行
以下是我的测试代码

#!/usr/bin/perl
use strict;
use warnings;
use DBI;
my $dbh = DBI-> connect( "dbi:Oracle:ora92",'wk','wk');
#ora92 本地ORACLE的SID


下面是报错
D:\Perl\resource>perl t2.pl
install_driver(Oracle) failed: Can't locate DBD/Oracle.pm in @INC (@INC contains
: D:/Perl/site/lib D:/Perl/lib .) at (eval 5) line 3.
Perhaps the DBD::Oracle perl module hasn't been fully installed,
or perhaps the capitalisation of 'Oracle' isn't right.
Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite, Sponge.
at t2.pl line 5
iambic 2011-03-15
  • 打赏
  • 举报
回复
哦,源里确实没有。你google下ppm dbd::oracle。我看到有很多搜索结果,应该可以解决你的问题。
看着奢扣 2011-03-15
  • 打赏
  • 举报
回复
用PPM 我记得装的是这个
Orac
Version: alpha-1.2.6
Released: 2001-10-17
Author: Andy Duncan <andy_j_duncan@yahoo.com>
CPAN: http://search.cpan.org/dist/Orac-alpha-1.2.6/
桃花岛黄岛主 2011-03-15
  • 打赏
  • 举报
回复
用PPM就弹出一个窗口来,那里我只能装DBI,装DBD::Oracle我不知道在PPM里怎么装啊
iambic 2011-03-15
  • 打赏
  • 举报
回复
不用ppm装就是找虐啊。

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧