今天编译程序,发现程序报错,如下
cannot find -liconv
collect2: ld returned 1 exit status
或者
undefined reference to `libiconv_open'
collect2: ld returned 1 exit status
是因为没有安装liconv包
iconv命令是用来转换文件的编码方式的(Convert encoding of given files from one encoding to another),比如它可以将UTF8编码的转换成GB18030的编码,反过来也行。JDK中也提供了类似的工具native2ascii。Linux下的iconv开发库包括iconv_open,iconv_close,iconv等C函数,可以用来在C/C++程序中很方便的转换字符编码,这在抓取网页的程序中很有用处,而iconv命令在调试此类程序时用得着
常见的LINUX发行版安装libiconv库方法
首先需要在切换在ROOT用户权限下执行
1.
包的下载页面http://www.gnu.org/software/libiconv/
或者用libiconv命令下载命令
# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
2 解压
# tar -zxvf libiconv-1.14.tar.gz
# cd libiconv-1.14.1
3.
# ./configure --prefix=/usr/local (我用的这个) (或者#./configure --prefix=/usr/local/libiconv)
4
#make
#make install