2014-10-03 97 views
0

当我尝试下面的perl脚本时,出现“perl:symbol lookup error”错误。它看起来是否我修改PATH目前我可以解决这个问题。但我不确定我应该为PATH带来什么样的自由。请让我知道,如果您对此问题有任何不同的解决方案或解决方法,我该如何解决此问题并随时分享。符号查找错误未定义符号:mysql_init

[[email protected]]# ./create_defs.pl --user root --password amma --db=d1 --table=tbl1 

**perl: symbol lookup error: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/mysql/mysql.so: undefined symbol: mysql_init** 

[[email protected]]# ll /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/mysql/mysql.so 

-r-xr-xr-x 1 root root 333965 Sep 12 13:05 /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/mysql/mysql.so 

[[email protected]]# echo $PATH 
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin 

从评论

这里是我的服务器的perl的版本,所以我怎么解决这个问题?

[[email protected] lib]# perl -v 

This is perl, v5.8.8 built for x86_64-linux-thread-multi 

从评论

感谢您回复。以下是我用来做安装

perl -MCPAN -e 'install Bundle::DBI' 
perl -MCPAN -e 'install DBD::mysql' 
perl -MCPAN -e 'install Bundle::DBD::mysql' 
perl -MCPAN -e 'DBI' perl -MCPAN -e 'DBD::mysql' 
perl -MCPAN -e 'install perl-DBD-MySQL' 
install Bundle::Mysql 

以下是我使用的命令的命令,你可以请指导我如何清除所有的Perl模块,做了重新安装。

+0

有可能的错误。 首先在你的脚本中使用'strict;'。 其次,mysql驱动安装有错误。 probe'find/-name mysql.so' – 2014-10-03 22:12:23

+0

@DenisKohl - OP的帖子显示'mysql.so'文件确实存在。在[前一个问题](https://stackoverflow.com/questions/13226772/usr-bin-perl-symbol-look-up-error-undefined-symbol-perl-istack-sp-ptr)这种性质,它是指出这个错误通常是由于正在编译的Perl版本不同于当前运行的版本而引起的。 – 2014-10-03 22:26:07

+0

[root @ localhost lib]#perl -v 这是为x86_64-linux-thread-multi构建的perl,v5.8.8 这是我的服务器中的perl版本,所以如何解决这个问题。 – user3933779 2014-10-03 22:47:09

回答

0

这不是一个标准的Perl错误消息,但反映了您的Perl安装问题。

你有很多不同的perl版本,玩的不好。

不能深入你的系统,我可以给出的最好的建议是彻底删除perl并重新安装。

+0

谢谢你的回应,以下是我用来安装的命令..perl -MCPAN -e'install Bundle :: DBI' perl -MCPAN -e'install DBD :: mysql' perl -MCPAN -e'install Bundle :: DBD :: mysql' perl -MCPAN -e'DBI' perl -MCPAN -e'DBD :: mysql' perl -MCPAN -e'install perl-DBD-MySQL' install Bundle :: Mysql 以下是我用过的命令,可否请指导我如何清除所有perl模块并重新安装。 – user3933779 2014-10-04 04:30:55

+0

对不起,我无法进一步帮助你。我已将您的评论复制到您的原始问题。请编辑您的问题以纠正我的补充内容,如果您想添加更多内容。 – Borodin 2014-10-04 04:38:21

相关问题