For a while now i have been trying to get an eggdrop to run on a SunOS 5.6 machine that i have. So far the only way I have managed to get an eggdrop to run on it is to use a pre compiled binary of 1.4.4 which unfortunetly does not support longer nickname's and seeing it is precompiled, there isn't an easy way to change it.
So again tonight i thought i would try and compile the eggdrop using the advice given to previous person's such as - disable the O2 flag and make static....
Unfortunatly for me it didnt work this time either :/
Here it is the results, if anyone could suggest something I would be thankful.
bash$ ./configure --disable-cc-optimization
This is Eggdrop's GNU configure script.
It's going to run a bunch of strange tests to hopefully
make your compile work without much twiddling.
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 how to run the C preprocessor... gcc -E
checking for AIX... no
checking for POSIXized ISC... no
checking for minix/config.h... no
checking whether the compiler understands -pipe... yes
checking whether make sets ${MAKE}... yes
checking for ranlib... ranlib
checking for a BSD compatible install... misc/install-sh -c
checking whether ln -s works... yes
checking for strip... strip
checking for gawk... gawk
checking for basename... basename
checking for uname... uname
checking system type... SunOS
checking system release... 5.6
checking for socket in -lsocket... yes
checking for connect in -lnsl... yes
checking for gethostbyname in -ldns... no
checking for dlopen in -ldl... yes
checking for tan in -lm... yes
checking for pthread_mutex_init in -lpthread... yes
checking for dirent.h that defines DIR... yes
checking for opendir in -ldir... no
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/time.h... yes
checking whether time.h and sys/time.h may both be included... yes
checking for sys/select.h... yes
checking for sys/rusage.h... no
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for stdarg.h... yes
checking for std_args.h... no
checking for strings.h... yes
checking for limits.h... yes
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... (cached) yes
checking for inttypes.h... yes
checking for stdint.h... no
checking for unistd.h... (cached) yes
checking for pid_t... yes
checking for size_t... yes
checking for gcc -pipe option to accept ANSI C... none needed
checking for an ANSI C-conforming const... yes
checking whether byte ordering is bigendian... yes
checking for inline... inline
checking for long... yes
checking size of long... 4
checking for int... yes
checking size of int... 4
checking for clock... yes
checking for getrusage... yes
checking for setpgid... yes
checking for uname... yes
checking for sigaction... yes
checking for sigemptyset... yes
checking for rename... yes
checking for strcasecmp... yes
checking for strncasecmp... yes
checking for getdtablesize... yes
checking for memset... yes
checking for random... yes
checking for srandom... yes
checking for dlopen... yes
checking for dprintf... no
checking for snprintf... yes
checking for vsnprintf... yes
checking for isascii... yes
checking for inet_aton... no
checking for memcpy... yes
checking for strftime... yes
checking for fsync... yes
checking for vsprintf... yes
checking for broken libsafe sscanf... no
checking for Tcl library... found /usr/local/lib/libtcl.a
checking for Tcl header... found /usr/local/include/tcl.h
checking whether the Tcl system has changed... yes
checking for Tcl version... 7.6
checking for Tcl patch level... 7.6
checking for Tcl_Free in -ltcl... no
checking for TclpFinalizeThreadData in -ltcl... no
configure: warning:
Your Tcl library is not a shared lib.
configure will now set default make type to static...
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating scripts/Makefile
config.status: creating src/Makefile
config.status: creating src/md5/Makefile
config.status: creating src/compat/Makefile
config.status: creating src/mod/Makefile
config.status: creating config.h
creating lush.h
Configure is done.
Type 'make config' to configure the modules, or type 'make iconfig'
to interactively choose which modules to compile.
After that, type 'make' to create the bot.
bash$ make config
detecting modules.................... done.
calculating dependencies................... done.
building ./src/mod/Makefile... done.
make[1]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod'
Configuring module compress ...
running in eggdrop mode.
creating cache ../../../config.cache
checking for gcc... gcc
checking whether the C compiler (gcc ) works... yes
checking whether the C compiler (gcc ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking for gzopen in -lz... yes
checking how to run the C preprocessor... gcc -E
checking for zlib.h... yes
checking for unistd.h... yes
checking for getpagesize... yes
checking for working mmap... yes
updating cache ../../../config.cache
creating ./config.status
creating Makefile
creating compress_config.h
Configuring module dns ...
running in eggdrop mode.
loading cache ../../../config.cache
checking for gcc... (cached) gcc
checking whether the C compiler (gcc ) works... yes
checking whether the C compiler (gcc ) is a cross-compiler... no
checking whether we are using GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for Cygwin environment... no
checking for res_init... no
checking for res_init in -lresolv... yes
checking for res_mkquery... no
checking for res_mkquery in -lresolv... yes
updating cache ../../../config.cache
creating ./config.status
creating Makefile
make[1]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod'
building ./src/mod/Makefile... done.
You can now compile the bot, using "make".
bash$ make static
Making module objects for static linking...
make[1]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/assoc.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././assoc.mod/assoc.c
mv assoc.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/assoc.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/blowfish.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././blowfish.mod/blowfish.c
mv blowfish.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/blowfish.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/channels.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././channels.mod/channels.c
mv channels.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/channels.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/compress.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././compress.mod/compress.c
rm -f ../compress.o
mv compress.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/compress.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/console.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././console.mod/console.c
mv console.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/console.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/ctcp.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././ctcp.mod/ctcp.c
mv ctcp.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/ctcp.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/dns.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././dns.mod/dns.c
mv dns.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/dns.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/filesys.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././filesys.mod/filesys.c
mv filesys.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/filesys.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/irc.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././irc.mod/irc.c
mv irc.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/irc.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/notes.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././notes.mod/notes.c
mv notes.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/notes.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/seen.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././seen.mod/seen.c
mv seen.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/seen.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/server.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././server.mod/server.c
mv server.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/server.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/share.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././share.mod/share.c
mv share.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/share.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/transfer.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././transfer.mod/transfer.c
mv transfer.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/transfer.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/uptime.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././uptime.mod/uptime.c
mv uptime.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/uptime.mod'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/wire.mod'
gcc -pipe -g -I. -I../../.. -I../../.. -I../../../src/mod -DHAVE_CONFIG_H -DSTATIC -DMAKING_MODS -c .././wire.mod/wire.c
mv wire.o ../
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod/wire.mod'
building static.h...
................ done.
make[1]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/mod'
Making core eggdrop for static linking...
make[1]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src'
(This may take a while. Go get some runts.)
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c bg.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c botcmd.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c botmsg.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c botnet.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c chanprog.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c cmds.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c dcc.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c dccutil.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c dns.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c flags.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c language.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC \
'-DCCFLAGS="gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC "' \
'-DLDFLAGS="gcc -pipe"' \
'-DSTRIPFLAGS="strip"' -c ./main.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c mem.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c misc.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c misc_file.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c modules.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c net.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c rfc1459.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c tcl.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c tcldcc.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c tclhash.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c tclmisc.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c tcluser.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c userent.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c userrec.c
gcc -pipe -g -I.. -I.. -DHAVE_CONFIG_H -DSTATIC -c users.c
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/md5'
gcc -pipe -g -I. -I../.. -I../.. -I../../src -DHAVE_CONFIG_H -DSTATIC -c md5c.c
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/md5'
make[2]: Entering directory `/u9/extern/ssinclai/eggdrop1.6.10/src/compat'
gcc -pipe -g -I../.. -I../.. -I../../src -DHAVE_CONFIG_H -DSTATIC -c inet_aton.c
gcc -pipe -g -I../.. -I../.. -I../../src -DHAVE_CONFIG_H -DSTATIC -c snprintf.c
gcc -pipe -g -I../.. -I../.. -I../../src -DHAVE_CONFIG_H -DSTATIC -c memset.c
gcc -pipe -g -I../.. -I../.. -I../../src -DHAVE_CONFIG_H -DSTATIC -c memcpy.c
gcc -pipe -g -I../.. -I../.. -I../../src -DHAVE_CONFIG_H -DSTATIC -c strcasecmp.c
gcc -pipe -g -I../.. -I../.. -I../../src -DHAVE_CONFIG_H -DSTATIC -c strftime.c
make[2]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src/compat'
---------- Yeah! that's the compiling, now the linking! ----------
Linking eggdrop... (static version)
gcc -pipe -o ../eggdrop bg.o botcmd.o botmsg.o botnet.o chanprog.o cmds.o dcc.o dccutil.o dns.o flags.o language.o main.o mem.o misc.o misc_file.o modules.o net.o rfc1459.o tcl.o tcldcc.o tclhash.o tclmisc.o tcluser.o userent.o userrec.o users.o mod/*.o -L/usr/local/lib -ltcl -lm -ldl -lnsl -lsocket md5/md5c.o compat/*.o `cat mod/mod.xlibs`
Undefined first referenced
symbol in file
Tcl_DoOneEvent main.o
Tcl_PkgProvide tcl.o
Tcl_FindExecutable tcl.o
ld: fatal: Symbol referencing errors. No output written to ../eggdrop
collect2: ld returned 1 exit status
make[1]: *** [../eggdrop] Error 1
make[1]: Leaving directory `/u9/extern/ssinclai/eggdrop1.6.10/src'
make: *** [static] Error 2
Thanks in advance:
btw, uname -a results are:
SunOS shade 5.6 Generic_105181-21 sun4u sparc SUNW,Ultra-4