undefined symbol libiconv_open 完全解决方案

我在另一篇关于Ubuntu+Sendmail+Dovecot+Openwebmail 邮件服务器搭建完全解决方案文章完成后,我的邮件服务器也搭建完成了, 事实上也正在运行中, 但是有网友依据我的操作步骤在进行安装时, 到编译到如下步骤时,

./cgi-bin/openwebmail/openwebmail-tool.pl --init

这一步时, 出现了

Creating UTF-8 locales...
langconv ar_AE.CP1256 -> ar_AE.UTF-8
/usr/bin/perl: symbol lookup error: /usr/local/lib/perl/5.14.2/auto/Text/Iconv/Iconv.so: undefined symbol: libiconv_open

这种错误, 本来以为是该网友的安装错误或者PHP的动态编译模块出错导致的. 所以结合网络上的看似权威的答案给该网友进行了回复, 在找这个答案时发现不只是在装sendmail+dovecot+openwebmail出现问题, 就连在PHP还有其他的软件在编译安装时也出现这种问题, 意识到这个问题并不简单. 后来wwufengg抽时间对该问题进行了深入地检查, 检查方法当然也是重建环境然后再装sendmail+dovecot+openwebmail的方法来实现的, 重建LAMP也是依照本博中的另一篇文章严格进行的. 很顺利, 略过, 在安装其他的文件时也都正常, 在进行到上述网友的那一步时, 我这边也出现了同样的情况, 那就是:

Creating UTF-8 locales...
langconv ar_AE.CP1256 -> ar_AE.UTF-8
/usr/bin/perl: symbol lookup error: /usr/local/lib/perl/5.14.2/auto/Text/Iconv/Iconv.so: undefined symbol: libiconv_open

看到这个问题的出现, 我这边既紧张又兴奋, 紧张的是这是我第一次遇到这个问题, 对于这种问题的解决并没有十分的把握, 兴奋的是这个问题现在出现, 有利于找到问题点, 说明上述网友的安装很可能没有错. 可能是一个通病. 我也依照我回复的内容进行了调整, 还是无法解决这个问题, 后来我在一篇文章中偶然看到出现这种问题可能是在编译过程中又重装了iconv.h这个文件. 我赶紧利用如下命令测试:

#find / -name 'íconv.h'

赫然发现果然有如下的三个文件出现.

而不同的是, 在我已经成功运行的邮件服务器中则只发现一个, 如图:

这个很有可能就是出现那个问题的源点, 知道了这一点, 为了彻底解决这个问题, 我又重装了LAMP, 然后又重新安装那些组件, 唯独不安装libiconv-1.9.1这个组件, 然后在进行

./cgi-bin/openwebmail/openwebmail-tool.pl --init

时,果然没有那个问题出现了, 然后就很顺利地完成了这个openwebmail这个软件的安装了. 之后又利用我的另一篇文章进行配置, 之后这个邮件服务器终于又露出熟悉的界面. 至此,问题解决.  其他的有关undefined symbol libiconv_open这种提示的问题都可以参照这个来进行解决.

 source: http://www.cnblogs.com/wwufengg/p/undefined-symbol-libiconv_open.html

你可能感兴趣的:(undefined symbol libiconv_open 完全解决方案)