On Wed, 2006-04-26 at 10:06 +0200, Philippe JOYEZ wrote:
Hello all,
I've finally succedeed in compiling syslog-ng on my new Solaris 10 box using the following tasks:
Modifications src/Makefile (Add -lrt) 75c75 < LIBS = -lpthread -lnsl -lsocket -ldoor -ll -L/usr/local/lib -lglib-2.0 -lintl -L/usr/local/lib -levtlog ---
LIBS = -lpthread -lrt -lnsl -lsocket -ldoor -ll -L/usr/local/lib -lglib-2.0 -lintl -L/usr/local/lib -levtlog
Fixed in the patch below.
Modification src/filter.c (Adding macros):
/* Define G_LIKELY() and G_UNLIKELY() so that they are available when * using GLib 1.2 as well. These allow optimization by static branch * prediction with GCC. */ #ifndef G_LIKELY #define G_LIKELY(x) (__builtin_expect(x, 1)) #define G_UNLIKELY(x) (__builtin_expect(x, 0)) #endif /* !G_LIKELY */
I don't understand this one, syslog-ng relies on GLib 2.0 heavily and I doubt it would build with glib 1.2 What is the exact version that you were using?
But when I start syslog-ng, I have the following error message:
Apr 26 09:50:55 sewerrat syslog-ng[752]: syslog-ng starting up; version='1.9.10' Apr 26 09:50:55 sewerrat syslog-ng[752]: Insufficient buffer space for retrieving STREAMS log message; res='ffffffff'
This is caused by the multi-read patches, also added a fix for this. And now here's the just committed patch (available in tomorrow's snapshot): --- orig/configure.in +++ mod/configure.in @@ -126,6 +126,7 @@ fi dnl Checks for library functions. AC_CHECK_LIB(door, door_create) AC_CHECK_LIB(socket, socket) +AC_CHECK_LIB(rt, nanosleep) AC_CHECK_LIB(nsl, gethostbyname) AC_CHECK_LIB(regex, regexec) --- orig/src/afstreams.c +++ mod/src/afstreams.c @@ -134,7 +134,7 @@ afstreams_sd_init(LogPipe *s, GlobalConf close(fd); return FALSE; } - self->reader = log_reader_new(streams_read_new(fd), LR_LOCAL, s, &self->reader_options); + self->reader = log_reader_new(streams_read_new(fd), LR_LOCAL | LR_NOMREAD, s, &self->reader_options); log_pipe_append(self->reader, s); if (self->door_filename) -- Bazsi