现在的位置: 首页 > IT运维 > 正文

undefined reference to `libiconv_open`

2010年09月08日 IT运维 ⁄ 共 581字 暂无评论 ⁄ 被围观 5,037+

在编译php、mysql、opencc时会遇到undefined reference to `libiconv_open‘的编译错误,以下是几种解决方法:

一、重新安装libiconv

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
tar -zxvf libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
./configure --prefix=/usr/local/libiconv
make
make install

二、去除iconv模块再编译应用:

使用./configure --help查看参数,看具体应用如何去除iconv编译,例如下面是opencc的无iconv的编译方法:

opencc:  ./configure CFLAGS=-liconv

再如php编译时,可在make时通过zend扩展参数去除libiconv的编译选项

make ZEND_EXTRA_LIBS=\'-liconv\'
make install

三、iconv重复安装在不同目录,造成include文件iconv.h等重复

通过 find / -name "iconv.h" 如果查找到2个以上返回结果,说明iconv重复安装了,卸载多余的版本即可正常编译。

给我留言

您必须 [ 登录 ] 才能发表留言!

×
#