I just checked out the latest CVS code for rsyslog in order to use the solaris Makefile. I'm running Solaris 10 on the sparc platform, using gnu make 3.8 and gcc 3.3.2. I intend to log other hosts to this system using MySQL as the repository. I've turned on the MySQL option in the solaris Makefile. When I first tried to compile, I got an error because I was using a 64-bit version of MySQL 5. Once I backed down to 32-bit MySQL 5, I receive fewer errors but it still fails.
Has anyone built rsyslog on Solaris 10, and if so, can you provide me with some instruction on how you did so? Can anyone tell me what the significance of the undefined symbols "floor", "compress" and "uncompress" might be?
The output of my failed make is listed below.
Thanks,
Ron
bash-3.00# make
gcc -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce -I/usr/local/include -DWITH_DB -DFEATURE_REGEXP -DUSE_PTHREADS -c ../rfc3195d.c
gcc -s -o rfc3195d rfc3195d.o
gcc -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce -I/usr/local/include -DWITH_DB -DFEATURE_REGEXP -DUSE_PTHREADS -DSYSLOG_INET -DSYSLOG_UNIXAF -DFSSTND -DSYSLOGD_PIDNAME=\"rsyslogd.pid\" -c ../syslogd.c
../syslogd.c: In function `parseRFCSyslogMsg':
../syslogd.c:4372: warning: dereferencing type-punned pointer will break strict-aliasing rules
../syslogd.c: In function `iovCreate':
../syslogd.c:4926: warning: passing arg 2 of `doSQLEscape' from incompatible pointer type
../syslogd.c:4929: warning: passing arg 2 of `doSQLEscape' from incompatible pointer type
gcc -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce -I/usr/local/include -DWITH_DB -DFEATURE_REGEXP -DUSE_PTHREADS -c ../pidfile.c
gcc -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce -I/usr/local/include -DWITH_DB -DFEATURE_REGEXP -DUSE_PTHREADS -c ../template.c
gcc -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce -I/usr/local/include -DWITH_DB -DFEATURE_REGEXP -DUSE_PTHREADS -c ../stringbuf.c
gcc -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce -I/usr/local/include -DWITH_DB -DFEATURE_REGEXP -DUSE_PTHREADS -c ../srUtils.c
gcc -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce -I/usr/local/include -DWITH_DB -DFEATURE_REGEXP -DUSE_PTHREADS -c ../outchannel.c
gcc -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce -I/usr/local/include -DWITH_DB -DFEATURE_REGEXP -DUSE_PTHREADS -c ../parse.c
gcc -s -lsocket -lnsl -lpthread -o syslogd syslogd.o pidfile.o template.o outchannel.o stringbuf.o srUtils.o parse.o -lmysqlclient -L/opt/mysql/mysql/lib
Undefined first referenced
symbol in file
floor /opt/mysql/mysql/lib/libmysqlclient.a(libmysql.o)
uncompress /opt/mysql/mysql/lib/libmysqlclient.a(my_compress.o)
compress /opt/mysql/mysql/lib/libmysqlclient.a(my_compress.o)
ld: fatal: Symbol referencing errors. No output written to syslogd
collect2: ld returned 1 exit status
make: *** [syslogd] Error 1
bash-3.00#

