电脑疯子技术论坛|电脑极客社区

 找回密码
 注册

QQ登录

只需一步,快速开始

[linux教程] CentOS 7下编译libiconv

[复制链接]
zhaorong 发表于 2017-3-18 15:26:21 | 显示全部楼层 |阅读模式

编译安装libiconv

   
  1. cd /usr/local/src
  2.     wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
  3.     tar xfz libiconv-1.14.tar.gz
  4.     cd libiconv-1.14
  5.     ./configure --prefix=/usr/local/libiconv
  6.     make
  7.     make install
  8.     cd ..
复制代码

make时遇到错误:


   
  1. gcc -DHAVE_CONFIG_H -DEXEEXT="" -I. -I.. -I../lib  -I../intl -DDEPENDS_ON_LIBICONV=1 -DDEPENDS_ON_LIBINTL=1   -g -O2 -c allocator.c
  2.     gcc -DHAVE_CONFIG_H -DEXEEXT="" -I. -I.. -I../lib  -I../intl -DDEPENDS_ON_LIBICONV=1 -DDEPENDS_ON_LIBINTL=1   -g -O2 -c areadlink.c
  3.     gcc -DHAVE_CONFIG_H -DEXEEXT="" -I. -I.. -I../lib  -I../intl -DDEPENDS_ON_LIBICONV=1 -DDEPENDS_ON_LIBINTL=1   -g -O2 -c careadlinkat.c
  4.     gcc -DHAVE_CONFIG_H -DEXEEXT="" -I. -I.. -I../lib  -I../intl -DDEPENDS_ON_LIBICONV=1 -DDEPENDS_ON_LIBINTL=1   -g -O2 -c malloca.c
  5.     gcc -DHAVE_CONFIG_H -DEXEEXT="" -I. -I.. -I../lib  -I../intl -DDEPENDS_ON_LIBICONV=1 -DDEPENDS_ON_LIBINTL=1   -g -O2 -c progname.c
  6.     In file included from progname.c:26:0:
  7.     ./stdio.h:1010:1: 错误:‘gets’未声明(不在函数内)
  8.      _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
  9.      ^
  10.       ke[2]: *** [progname.o] 错误 1
  11.     ▽ake[2]: 离开目录“/usr/local/src/libiconv-1.14/srclib”
  12.     make[1]: *** [all] 错误 2
  13.     make[1]: 离开目录“/usr/local/src/libiconv-1.14/srclib”
  14.     make: *** [all] 错误 2
复制代码


解决办法1:

   
  1. 编辑stdio.h文件,将 _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");字段部分内容改为如下:
  2. #if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16)
  3. _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
  4. #endif
  5. #endif
复制代码


解决办法2:

   
  1. cd srclib/
  2.     sed -ir -e '/gets is a security/d' ./stdio.in.h
  3.     cd ../
  4.     make
复制代码



重新make即可!

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|VIP|电脑疯子技术论坛 ( Computer madman team )

GMT+8, 2025-2-2 21:09

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表