尝试安装DBD :: Oracle库时收到以下错误消息“无法加载/usr/lib/perl5/site_perl/5.24/x86_64-cygwin-threads/auto/DBD/Oracle/Oracle.dll for模块DBD :: Oracle:/usr/lib/perl5/5.24/x86_64-cygwin-threads/DynaLoader.pm中没有这样的文件目录“
我使用以下步骤在Windows上安装了DBD :: Oracle库:
instantclient碱性-11.2.0.4.0
instantclient-SQLPLUS-11.2.0.4.0
instantclient-sdk-11.2.0.4.0
然后,我将它们全部解压缩到c:\ Oracle。 接下来,我在Windows上的系统环境中包含了以下目录,如下所示
ORACLE_HOME = C:\甲骨文\ instantclient_11_2 LD_LIBRARY_PATH = C:\ Oracle \ instantclient_11_2 \ lib(此文件夹中没有lib目录,但我遵循在线文章的说明)
最后,我打开了命令提示符并运行并收到了错误消息:
perl -MCPAN -e“安装DBD :: Oracle”
答案 0 :(得分:1)
我通过将32位Oracle Client 11g版本安装到此位置c:\ oracle的计算机上解决了该问题。它不能使用instantclient版本,因为即时客户端不包含必要的库。
从以下链接下载“适用于Microsoft Windows(32位)的Oracle Database 11g第2版客户端(11.2.0.1.0)”并安装完整的管理员版权 http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
接下来,在您的计算机上的环境变量中创建ORACLE_HOME变量,并为其添加以下路径:ORACLE_HOME = C:\ Oracle \ product \ 11.2.0 \ client_1
接下来,创建LD_LIBRARY_PATH变量并添加以下路径: LD_LIBRARY_PATH = C:\甲骨文\产品\ 11.2.0 \的Client_1 \ lib中
然后,使用perl安装模块而不进行测试。在测试期间,它将失败,因为它试图连接到您的数据库:
在此位置C:\ Windows \ SysWOW64 \中打开odbcad32.exe,然后单击“添加”。键入Oracle作为名称和描述,然后单击“保存”。 SysWOW64将连接32位版本的odbcad32应用程序以创建引用。
注意: 您将遇到的最大问题是确保使用的是使用cygwin,oracle软件和odbcad32的32位驱动程序。如果将64位驱动程序与32位驱动程序混合,您将收到无法加载库。
重新打开任何命令提示符窗口,然后再次尝试运行perl脚本。