當我嘗試下面的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模塊,做了重新安裝。
有可能的錯誤。 首先在你的腳本中使用'strict;'。 其次,mysql驅動安裝有錯誤。 probe'find/-name mysql.so' – 2014-10-03 22:12:23
@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
[root @ localhost lib]#perl -v 這是爲x86_64-linux-thread-multi構建的perl,v5.8.8 這是我的服務器中的perl版本,所以如何解決這個問題。 – user3933779 2014-10-03 22:47:09