2012-07-15 215 views
2

我正在使用perl 5.10.1我目前的服务器(centos 6.3)。每当我执行Perl程序,我收到以下错误:install_driver(ODBC)失败:无法为模块DBD :: ODBC加载'/usr/local/lib64/perl5/auto/DBD/ODBC/ODBC.so':libodbc.so.1

install_driver(ODBC) failed: Can't load '/usr/local/lib64/perl5/auto/DBD/ODBC/ODBC.so' 
for module DBD::ODBC: libodbc.so.1: cannot open shared object file: No such file or 
directory at /usr/lib64/perl5/DynaLoader.pm line 200. 

当我执行以下命令:

[[email protected]]# ldd /usr/local/lib64/perl5/auto/DBD/ODBC/ODBC.so 
linux-vdso.so.1 => (0x00007fffde569000) 
libodbc.so.1 => not found 
libc.so.6 => /lib64/libc.so.6 (0x00007f591e49a000) 
/lib64/ld-linux-x86-64.so.2 (0x0000003d25e00000) 

我得到libodbc.so.1 is not found

回答

0

您可能需要安装C++ ODBC库。当我尝试使用XML :: LibXML库时,遇到了类似的问题。我的情况下,我不得不在ubuntu上安装以下C++库。 libxml2-dev libxml2

以下是Ubuntu libodbc软件包存储库的链接。 http://packages.ubuntu.com/hardy/libodbc++4

希望有所帮助。

+0

我已经安装了C++ ODBC库,基本上我会用centos 6.3 – 2012-07-15 12:34:36

+0

Ugg。我感到你的痛苦。他们的FAQ说你安装的订单很重要。 http://search.cpan.org/~mjevans/DBD-ODBC-1.39/FAQ#What_is_the_ODBC_driver_manager? – MrMcKizzle 2012-07-15 13:06:24

0

您需要安装unixODBC和unixODBC-dev软件包的64位版本(或自己构建它们)。我很惊讶你已经安装了DBD :: ODBC,因为构建过程需要它们。所以,问题是你是如何安装DBD :: ODBC的?