Re: Perdition make error

Simon Horman <[email protected]>
Newsgroups gmane.mail.perdition.user
Message-ID <[email protected]>
On Wed, Jun 02, 2010 at 09:32:44AM +0200, Martin Hochreiter wrote:
> 
> >Thanks.
> >
> >I suspect that your installation of vanessa_logger is not the latest
> >version and that some macros provided by it are causing the problem
> >that you are seeing. Could you try the following patch for perdition.c ?
> >It should fix the build-errors that you are seeing, but I'm not sure
> >that the result will run as expected.
> >
> >Index: perdition/perdition/perdition.c
> >===================================================================
> >--- perdition.orig/perdition/perdition.c	2010-06-02 14:05:21.000000000 +0900
> >+++ perdition/perdition/perdition.c	2010-06-02 14:06:01.000000000 +0900
> >@@ -704,15 +704,16 @@ int main (int argc, char **argv, char **
> >      token_flush();
> >      if(status<0){
> >        VANESSA_LOGGER_DEBUG("protocol->in_get_pw");
> >-      if (io_get_err(client_io) == io_err_timeout)
> >+      if (io_get_err(client_io) == io_err_timeout) {
> >  	VANESSA_LOGGER_ERR_UNSAFE("Fatal Error: Timeout reading "
> >  				  "authentication information from "
> >  				  "client%s: Exiting child",
> >  				  from_to_host_str);
> >-      else
> >+      } else {
> >  	VANESSA_LOGGER_ERR_UNSAFE("Fatal Error reading authentication "
> >  				  "information from client%s: "
> >  				  "Exiting child", from_to_host_str);
> >+      }
> >        perdition_exit_cleanly(-1);
> >      }
> >      else if(status == 1){
> >@@ -944,11 +945,12 @@ int main (int argc, char **argv, char **
> >      }
> >      else if(status<0){
> >        VANESSA_LOGGER_DEBUG_UNSAFE("protocol->out_authenticate %d", status);
> >-      if (io_get_err(client_io) == io_err_timeout)
> >+      if (io_get_err(client_io) == io_err_timeout) {
> >  	VANESSA_LOGGER_ERR("Fatal error: Timeout authenticating user. "
> >  			   "Exiting child.");
> >-      else
> >+      } else {
> >          VANESSA_LOGGER_ERR("Fatal error authenticating user. Exiting child.");
> >+      }
> >        perdition_exit_cleanly(-1);
> >      }
> >
> >@@ -992,11 +994,12 @@ int main (int argc, char **argv, char **
> >    if(io_pipe(server_io, client_io, buffer, BUFFER_SIZE,
> >          &bytes_written,&bytes_read,&auth_log)<0){
> >      VANESSA_LOGGER_DEBUG("vanessa_socket_pipe");
> >-    if (io_get_err(client_io) == io_err_timeout)
> >+    if (io_get_err(client_io) == io_err_timeout) {
> >        VANESSA_LOGGER_ERR("Fatal error: Timeout piping data. "
> >  			 "Exiting child.");
> >-    else
> >+    } else {
> >        VANESSA_LOGGER_ERR("Fatal error piping data. Exiting child.");
> >+    }
> >      perdition_exit_cleanly(-1);
> >    }
> >
> >
> Hello Simon!
> 
> Thank you for the patch - as this is a production enviroment with
> over 3000 users, I don't
> want to try the patch when you are unsure if it is working :)

Fair enough. But it would be interesting to see if it makes
the build problem go away.

> To get further into troubleshooting - that are the rpm libaries of
> vanessa - i think the
> configure script of perdition will use them and they should be the
> most recent versions, or am I wrong?
> 
> libvanessa_socket1-0.0.10-2.1
> libvanessa_logger0-0.0.8-18.1
> libvanessa_adt0-0.0.8-6.1

Those version should be fine.
I assume that you also have:

libvanessa_adt0-devel-0.0.8-6.1
libvanessa_logger0-devel-0.0.8-18.1
libvanessa_socket1-devel-0.0.10-2.1


Actually, I just tested building 1.18 against them on x86_64 CentOS and
it seemed to work out fine.

What I suspect is that there is another (older) version of
libvanessa_logger.h on the system and that this is being
used instead of the version that came with
libvanessa_logger0-devel-0.0.8-18.1 (/usr/include/vanessa_logger.h).

> I can compile the vanessa stuff myself (in an alternative /opt/
> directory) but I don't know
> how to tell the perdition configure script to use them and not the
> rpm ones - so maybe
> you can help me here. That would enable me to compile perdition and
> vanessa completely from sources.

There isn't an easy way to tell perdition to prefer a particular directory
for those libraries.

> So far I compiled logger and adt but  the vanessa_socket also dies with:
> 
> [root@mailgw vanessa_socket-0.0.10]# make
> make  all-recursive
> make[1]: Entering directory `/root/perdition-1.18/vanessa_socket-0.0.10'
> Making all in libvanessa_socket
> make[2]: Entering directory
> `/root/perdition-1.18/vanessa_socket-0.0.10/libvanessa_socket'
> /bin/sh ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.
> -I..     -g -O2 -MT vanessa_socket_client.lo -MD -MP -MF
> .deps/vanessa_socket_client.Tpo -c -o vanessa_socket_client.lo
> vanessa_socket_client.c
> libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -MT
> vanessa_socket_client.lo -MD -MP -MF .deps/vanessa_socket_client.Tpo
> -c vanessa_socket_client.c  -fPIC -DPIC -o
> .libs/vanessa_socket_client.o
> vanessa_socket_client.c: In function »vanessa_socket_client_src_open«:
> vanessa_socket_client.c:200: Fehler: expected expression before »else«
> vanessa_socket_client.c:221: Fehler: expected expression before »else«
> make[2]: *** [vanessa_socket_client.lo] Fehler 1
> make[2]: Leaving directory
> `/root/perdition-1.18/vanessa_socket-0.0.10/libvanessa_socket'
> make[1]: *** [all-recursive] Fehler 1
> make[1]: Leaving directory `/root/perdition-1.18/vanessa_socket-0.0.10'
> make: *** [all] Fehler 2

This appears to be the same problem that you're having with compiling perdition.


______________________________________________
Perdition-users mailing list
[email protected]
http://lists.vergenet.net/listinfo/perdition-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.