[CentOS-es] Ayuda con chpasswd

Eduardo Grosclaude eduardo.grosclaude en gmail.com
Mie Dic 23 03:36:25 UTC 2009


2009/12/22 Rolando Arteaga Lamar <roly08042 en cha.jovenclub.cu>:
>
> Hola listeros, necesito implementar este script en mi trabajo. Este script
> es para cambiar la contraseña via web al servidor squid. Yo compilo el
> programa, pero cuando trato de instalarlo me da un error es el siquiente.
>
>
> [root en servidor chpasswd-2.2.3]# make
> gcc -c  -O2 -w  -I. -DPACKAGE_NAME=3D\"\" -DPACKAGE_TARNAME=3D\"\"
> -DPACKAGE_VERSION=3D\"\" -DPACKAGE_STRING=3D\"\" -DPACKAGE_BUGREPORT=3D\"=
>  \"
>  -DHAVE_LIBCRYPT=3D1 -DHAVE_DIRENT_H=3D1 -DSTDC_HEADERS=3D1 -DHAVE_SYS_TYP=
>  ES_H=3D1
>  -DHAVE_SYS_STAT_H=3D1 -DHAVE_STDLIB_H=3D1 -DHAVE_STRING_H=3D1 -DHAVE_MEMO=
>  RY_H=3D1
>  -DHAVE_STRINGS_H=3D1 -DHAVE_INTTYPES_H=3D1 -DHAVE_STDINT_H=3D1 -DHAVE_UNI=
>  STD_H=3D1
>  -DHAVE_CRYPT_H=3D1 -DHAVE_PWD_H=3D1 -DHAVE_STDIO_H=3D1 -DHAVE_STDLIB_H=3D=
>  1
>  -DHAVE_SYS_STAT_H=3D1 -DHAVE_SYS_TIME_H=3D1 -DHAVE_TIME_H=3D1 -DHAVE_UNIS=
>  TD_H=3D1
>  -DHAVE_STRSTR=3D1  -DPREFIX=3D\"/etc/chpasswd\"  -DSpanish chpasswd.c
>  chpasswd.c:286: error: la declaraci=C3=B3n static de
>  =E2=80=98htoi=E2=80=99=
>  a continuaci=C3=B3n de
>  una no static
>  chpasswd.c:269: error: la declaraci=C3=B3n impl=C3=ADcita previa de
>  =E2=80=
>  =98htoi=E2=80=99 estaba aqu=C3=AD
>  make: *** [chpasswd.o] Error 1
>
>
>
> Este es el error en el archivo, chpasswd.c, es en la linea 286, 269. y en
> la linea de htoi.

Acabo de bajar este paquete y efectivamente en la línea 286 aparece
una declaración "static int" antes de una función, comentada (con
doble barra // al principio). Si sacas esa doble barra se produce el
error.

El error se produce porque esa declaración ya no concuerda con un uso
anterior de la función, que *no* lleva el static, que está en la línea
270.

Al configurar con --enable-language=Spanish y compilar con make, a mí
no se me produce el error y compila perfecto. Tengo CentOS 5.4 al día.
Calculo que has aplicado algún patch que no ha considerado el asunto
del modificador static.

Sugerencia: agrega al archivo conf.h, al final, una línea que diga exactamente:

static int htoi(s);

Y vuelve a compilar.



-- 
Eduardo Grosclaude
Universidad Nacional del Comahue
Neuquen, Argentina


Más información sobre la lista de distribución CentOS-es