[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