Mailing List Archive

little help please.
I am attempting to compile wackamole 2.0.0 for testing as an HA solultion
for me. However, when I go to try and compile it, compilation fails. It
./configures correctly, but make fails as below. Spread has already been
successfully configured and compiled, and installed. This is on a fairly
stock solaris 8 system ( installed gcc and zlib from sunfreeware)..

netravis2#

./configure --prefix=/env/lvWeb/wackamole2.0.0 --with-cppflags=-I/env/lvWeb/
spread3.17.1/include --with-ldflags=-L/env/lvWeb/spread3.17.1/lib
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for executable suffix...
checking for object suffix... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking build system type... sparc-sun-solaris2.8
checking host system type... sparc-sun-solaris2.8
checking whether byte ordering is bigendian... yes
checking how to run the C preprocessor... gcc -E
checking for ranlib... ranlib
checking for a BSD compatible install... ./install-sh -c
checking whether ln -s works... yes
checking for bison... no
checking for byacc... no
checking for flex... no
checking for lex... lex
checking for yywrap in -lfl... no
checking for yywrap in -ll... yes
checking lex output file root... lex.yy
checking whether yytext is a pointer... no
configure: WARNING: *** this program requires GNU flex, but it looks ***
configure: WARNING: *** like your parsers is already built ***
checking for ar... /usr/ccs/bin/ar
checking for perl5... no
checking for perl... /usr/bin/perl
checking for gcc option to accept ANSI C... none needed
checking for inline... inline
checking for pthread_create in -lc_r... no
checking for pthread_create in -lcma... no
checking for pthread_create in -lpthread... yes
checking for pthread_mutex_lock... yes
checking for pthread.h... yes
checking for thr_create in -lthread... yes
checking for sem_wait in -lposix4... yes
checking for gethostbyaddr in -lnsl... yes
checking for socket in -lsocket... yes
checking for dlopen in -ldl... yes
checking for SP_connect in -ltsp... no
checking for SP_connect in -ltspread... yes
checking for strftime... yes
checking for features.h... no
checking for pcap.h... no
checking for net/ethernet.h... no
checking for netinet/if_ether.h... yes
checking for net/if_dl.h... yes
checking for net/if.h... yes
checking for net/if_types.h... yes
checking for net/route.h... yes
checking for sys/ioctl.h... yes
checking for arpa/inet.h... yes
checking for assert.h... yes
checking for errno.h... yes
checking for grp.h... yes
checking for limits.h... yes
checking for sys/resource.h... yes
checking for netdb.h... yes
checking for netinet/in.h... yes
checking for netinet/tcp.h... yes
checking for pwd.h... yes
checking for signal.h... yes
checking for stdarg.h... yes
checking for stdint.h... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for ctype.h... yes
checking for stropts.h... yes
checking for sys/inttypes.h... yes
checking for sys/ioctl.h... (cached) yes
checking for sys/param.h... yes
checking for sys/socket.h... yes
checking for sys/stat.h... yes
checking for sys/time.h... yes
checking for sys/timeb.h... yes
checking for sys/types.h... yes
checking for sys/wait.h... yes
checking for sys/uio.h... yes
checking for sys/un.h... yes
checking for sys/sysctl.h... no
checking for time.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for strings.h... yes
checking for sys/sockio.h... yes
checking for sys/dlpi.h... yes
checking for net/bpf.h... no
checking for sys/filio.h... yes
checking for syslog.h... yes
checking for sp.h... yes
checking for sp.h... (cached) yes
checking for bcopy... yes
checking for inet_aton... no
checking for inet_ntoa... yes
checking for inet_ntop... yes
checking for memmove... yes
checking for setsid... yes
checking for snprintf... yes
checking for strerror... yes
checking for lrand48... yes
checking for gettimeofday... yes
checking for time... yes
checking whether snprintf correctly terminates long strings... no
configure: WARNING: ****** Your snprintf() function is broken, complain to
your vendor
checking for ANSI C header files... no
checking for sys/types.h... (cached) yes
checking for sys/stat.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for memory.h... yes
checking for strings.h... (cached) yes
checking for inttypes.h... yes
checking for stdint.h... (cached) no
checking for unistd.h... (cached) yes
checking for char... yes
checking size of char...
checking for short int... yes
checking size of short int...
checking for int... yes
checking size of int...
checking for long int... yes
checking size of long int...
checking for long long int... yes
checking size of long long int...
checking for struct timezone type... yes
checking for struct sockopt_len_t type... no
checking for SOCK_PACKET... no
checking for Linux's /proc/net/arp... no
checking for BPF... no
checking for DLPI... yes
checking for struct msghdr type... yes
checking for struct msghdr control... no
checking for struct msghdr accrights... yes
checking for u_int type... yes
checking for intXX_t types... yes
checking for int64_t type... yes
checking for u_intXX_t types... no
checking for u_int64_t types... no
checking for uintXX_t types... yes
checking for socklen_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking for clock_t... yes
checking for sa_family_t... yes
checking for struct sockaddr_storage... yes
checking for struct sockaddr_in6... yes
checking for struct in6_addr... yes
checking for struct addrinfo... yes
checking for struct timeval... yes
checking for sun_len field in struct sockaddr_un... no
checking for ss_family field in struct sockaddr_storage... yes
checking for __ss_family field in struct sockaddr_storage... no
checking for si_value.sival_ptr... yes
checking for si_value.sigval_ptr... no
checking for pid_t... yes
checking if libc defines __progname... no
checking if libc defines sys_errlist... yes
checking if libc defines sys_nerr... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h

Ecelerity has been configured with the following options:
User binaries: /env/lvWeb/wackamole2.0.0/bin
System binaries: /env/lvWeb/wackamole2.0.0/sbin
Configuration files: /env/lvWeb/wackamole2.0.0/etc
User libraries: /env/lvWeb/wackamole2.0.0/lib
Manual pages: /env/lvWeb/wackamole2.0.0/man/manX
PID file dir: /var/run
Manpage format: man

Host: sparc-sun-solaris2.8
Compiler: gcc
Compiler flags: -g -O2 -Wall
Preprocessor flags: -I/env/lvWeb/spread3.17.1/include
Linker
flags: -L/env/lvWeb/spread3.17.1/lib -R/env/lvWeb/spread3.17.1/lib


Libraries: -ldl -lsocket -lnsl -lposix4 -lthread -lpthread -ltspread
ife packet code: ife-dlpi.o

netravis2# make

gcc -g -O2 -Wall -I. -I. -I/env/lvWeb/spread3.17.1/include -DETCDIR=\"/env/

lvWeb/wackamole2.0.0/etc\" -D_PATH_WACKAMOLE_PIDDIR=\"/var/run\" -DHAVE_CON
FIG_H -c wackamole.c
In file included from config.h:290,
from wackamole.c:35:
defines.h:245:23: operator '==' has no left operand
defines.h:249:29: operator '==' has no left operand
wackamole.c: In function `main':
wackamole.c:210: warning: int format, pid_t arg (arg 4)
*** Error code 1
make: Fatal error: Command failed for target `wackamole.o'
netravis2#
little help please. [ In reply to ]
-----BEGIN PGP SIGNED MESSAGE-----


On Mar 10, 2004, at 5:48 PM, Superman wrote:

> checking for char... yes
> checking size of char...
> checking for short int... yes
> checking size of short int...
> checking for int... yes
> checking size of int...
> checking for long int... yes
> checking size of long int...
> checking for long long int... yes
> checking size of long long int...

These are disturbing. The size of those should be a valid integer.

You can edit the config.h file and define the appropriate sizeofs
yourself. This is a Sparc? or Intel?

I haven't played on Sol8 for a while, all the Solaris testing happens
on Sol9. However, the only tricky API is the interface ioctl()s and
those haven't changed enough since Sol7 to make a difference.

On intel, you should see something like this in your config.h file:
#define SIZEOF_CHAR 1
#define SIZEOF_INT 4
#define SIZEOF_LONG_INT 4
#define SIZEOF_LONG_LONG_INT 8
#define SIZEOF_SHORT_INT 2

I don't have a Sparc running in 64bit mode anywhere to test on, but in
32bit mode it is the same on my e4500

I don't have a clue as to why the configure script didn't find the
sizes of those types...
If you are curious as to the real sizes of those types, compile the
folloing and run it on your box:

#define printsize(a) printf(#a": %d\n", sizeof(a));
int main() {
printsize(char);
printsize(int);
printsize(long int);
printsize(long long int);
printsize(short int);
}


// Theo Schlossnagle
// Principal Engineer -- http://www.omniti.com/~jesus/
// Postal Engine -- http://www.postalengine.com/
// Ecelerity: fastest MTA on Earth
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (Darwin)

iQEVAwUBQE+vB1wyh8czExtlAQGqxAf+KFycMjj9js7fQTdSDlFvJuP7WtylIOdd
u0LvdCjt6sH/7qCO3XCRldVMSi4q3mnj6w+yaD1a25m1+25PEhH7kobjym7+S5n2
Au8Fq6vJleaI/dkCh5+IutN/Tq/KYV1UEYoj90rRjI2dNMyLFWzi/RujOIf41jNx
S7sDRiYZF6xBhD6YFytULTou0e8tN+SqchlEefmvDznwjzv6jtfQV2imAULImjFR
CmPbozaTfdDAmpygsr7JaNNHUD+VqJ2fvvI46Od9sbNdN8/OArbLzir+Tgjnsh5o
IrNY8ogwJ6baT+xEpn7bphRAMvrqAR6WIrpcQZa9lBtoJmhsAVFKHQ==
=yTjI
-----END PGP SIGNATURE-----