Foros del Web » Administración de Sistemas » Apache »

Error al compilar mod_auth_mysql en windows

Estas en el tema de Error al compilar mod_auth_mysql en windows en el foro de Apache en Foros del Web. Hola, el problema es que no soy capaz de compilar el módulo de apache mod_auth_mysql en la versión 2.2.13 de apache, en windows xp. He ...
  #1 (permalink)  
Antiguo 23/09/2009, 03:53
 
Fecha de Ingreso: mayo-2009
Mensajes: 4
Antigüedad: 15 años
Puntos: 0
Sonrisa Error al compilar mod_auth_mysql en windows

Hola,

el problema es que no soy capaz de compilar el módulo de apache mod_auth_mysql en la versión 2.2.13 de apache, en windows xp.

He seguido los pasos de algunas versiones de módulo, pero tengo el mismo error con varias versiones que he probado.

Para compilar utilizo Microsoft Express Visual C++ 2005, con el SDK del 2008 (necesario) y habiendo compilado previamente mysql, para poder enlazar las librerias necesarias por este módulo.

Los errores que me dan son:
Código:
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(511) : warning C4013: 'APR_XtOffsetOf' sin definir; se supone que extern devuelve como resultado int
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(511) : error C2143: error de sintaxis : falta ')' delante de 'tipo'
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(515) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(519) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(523) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(527) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(531) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(535) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(539) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(543) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(547) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(551) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(555) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(559) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(563) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(567) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(571) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(575) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(579) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(583) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(587) : error C2059: error de sintaxis : ','
1>c:\httpd-2.2.13\modules\mod_auth_mysql-2.9.0\mod_auth_mysql.c(590) : error C2059: error de sintaxis : '}'
y el codigo que provoca el error es:

Código:
#ifdef APACHE2
static
command_rec mysql_auth_cmds[] = {
	AP_INIT_TAKE1("AuthMySQLHost", ap_set_string_slot,
	((void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlhost)),
	OR_AUTHCFG, "mysql server host name"),

	AP_INIT_TAKE1("AuthMySQLPort", ap_set_int_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlport),
	OR_AUTHCFG, "mysql server port number"),

	AP_INIT_TAKE1("AuthMySQLSocket", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlsocket),
	OR_AUTHCFG, "mysql server socket path"),

	AP_INIT_TAKE1("AuthMySQLUser", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqluser),
	OR_AUTHCFG, "mysql server user name"),

	AP_INIT_TAKE1("AuthMySQLPassword", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlpasswd),
	OR_AUTHCFG, "mysql server user password"),

	AP_INIT_TAKE1("AuthMySQLDB", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlDB),
	OR_AUTHCFG, "mysql database name"),

	AP_INIT_TAKE1("AuthMySQLUserTable", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlpwtable),
	OR_AUTHCFG, "mysql user table name"),

	AP_INIT_TAKE1("AuthMySQLGroupTable", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlgrptable),
	OR_AUTHCFG, "mysql group table name"),

	AP_INIT_TAKE1("AuthMySQLNameField", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlNameField),
	OR_AUTHCFG, "mysql User ID field name within table"),

	AP_INIT_TAKE1("AuthMySQLGroupField", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlGroupField),
	OR_AUTHCFG, "mysql Group field name within table"),

	AP_INIT_TAKE1("AuthMySQLPasswordField", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlPasswordField),
	OR_AUTHCFG, "mysql Password field name within table"),

	AP_INIT_TAKE1("AuthMySQLPwEncryption", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlEncryptionField),
	OR_AUTHCFG, "mysql password encryption method"),

	AP_INIT_TAKE1("AuthMySQLSaltField", ap_set_string_slot,
	(void*) APR_XtOffsetOf(mysql_auth_config_rec, mysqlSaltField),
	OR_AUTHCFG, "mysql salfe field name within table"),
	
	AP_INIT_FLAG("AuthMySQLKeepAlive", ap_set_flag_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlKeepAlive),
	OR_AUTHCFG, "mysql connection kept open across requests if On"),

	AP_INIT_FLAG("AuthMySQLAuthoritative", ap_set_flag_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlAuthoritative),
	OR_AUTHCFG, "mysql lookup is authoritative if On"),

	AP_INIT_FLAG("AuthMySQLNoPasswd", ap_set_flag_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlNoPasswd),
	OR_AUTHCFG, "If On, only check if user exists; ignore password"),

	AP_INIT_FLAG("AuthMySQLEnable", ap_set_flag_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlEnable),
	OR_AUTHCFG, "enable mysql authorization"),

	AP_INIT_TAKE1("AuthMySQLUserCondition", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlUserCondition),
	OR_AUTHCFG, "condition to add to user where-clause"),

	AP_INIT_TAKE1("AuthMySQLGroupCondition", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlGroupCondition),
	OR_AUTHCFG, "condition to add to group where-clause"),

	AP_INIT_TAKE1("AuthMySQLCharacterSet", ap_set_string_slot,
	(void *) APR_XtOffsetOf(mysql_auth_config_rec, mysqlCharacterSet),
	OR_AUTHCFG, "mysql character set to be used"),

  { NULL }
};
No se si es este el foro más apropiado para la pregunta, pero como esta relacionado con Apache lo he situado aquí.

Espero que alguien pueda resolverme el problema porque me voy a volver loco. Llevo 1 semana intentando compilar este maldito módulo.
Quizá sea porque no es posible usar el módulo en windows con esta versión de apache. Asi que si alguien sabe que por favor me lo diga.

También agradecería si alguien puedira decirme si existe otro módulo similar, para utilizar autentificación de usuarios con base de datos mysql, es que he visto algo del módulo mod_authn_dbd pero explican con un ejemplo de oracle y soy un pcoo novato en esto y no lo entiendo muy bien.

Un saludo, gracias!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:05.