Subject: Re: Compiling pkgsrc/net/eggdrop-1.6.6 HELP needed
To: Lista de NetBSD Users <list10@sepc.edu.mx>
From: Alistair Crooks <agc@pkgsrc.org>
List: netbsd-users
Date: 10/15/2001 11:53:55
Taken from a -current pkgsrc instance:

% make
===> all [eggdrop-1.3.22] ===> eggdrop-1.3.22 is marked as broken:
===> all [eggdrop-1.3.22] ===> This package has not yet been updated to work past tcl-8.0.5.
%

And from the cvs log of the eggdrop Makefile

% cvs log Makefile

RCS file: /cvsroot/pkgsrc/net/eggdrop/Makefile,v
Working file: Makefile
head: 1.7
branch:
locks: strict
access list:
symbolic names:
        netbsd-1-5-PATCH001: 1.7
        netbsd-1-5-RELEASE: 1.4
        netbsd-1-4-PATCH003: 1.4
        netbsd-1-4-PATCH002: 1.2
        comdex-fall-1999: 1.2
        netbsd-1-4-PATCH001: 1.2
        netbsd-1-4-RELEASE: 1.2
keyword substitution: kv
total revisions: 7;     selected revisions: 7
description:
----------------------------
revision 1.7
date: 2001/02/17 18:18:49;  author: wiz;  state: Exp;  lines: +2 -1
Update to new COMMENT style: COMMENT var in Makefile instead of pkg/COMMENT.
----------------------------
revision 1.6
date: 2001/01/24 18:44:59;  author: he;  state: Exp;  lines: +2 -2
Depend on tcl>=8.3.2 instead of tcl-8.3.2 now that PKGNAME of tcl
is bumped to tcl-8.3.2nb1.
----------------------------
revision 1.5
date: 2000/11/14 16:39:56;  author: abs;  state: Exp;  lines: +3 -3
Swap tcl version in DEPENDS and BROKEN message, now passes lintpkgsrc
-BROKEN=        This package has not yet been updated to work with tcl-8.3.2.
+BROKEN=        This package has not yet been updated to work past tcl-8.0.5.
-DEPENDS+=      tcl-8.0.5:../../lang/tcl
+DEPENDS+=      tcl-8.3.2:../../lang/tcl

So the 1.5.1 pkgsrc shipped with version 1.7 of the package Makefile,
which is marked as broken, because the package has not been updated to
work with the version of tcl which we use in pkgsrc.

Regards,
Alistair

On Fri, Oct 12, 2001 at 08:33:48PM -0600, Lista de NetBSD Users wrote:
> Hello
> 
> I need to run an IRC robot in our intranet. The old
> eggdrop-1.3.22 is broken.... and I am trying to build
> the new eggdrop-1.6.6  The box is i386 NetBSD-1.5.2
> and the pkgsrc is NetBSD-1.5.2/source/sets/pkgsrc.tgz
> 
> I am using the files of pkgsrc/net/eggdrop-1.3.22 as
> an example in order to build the new one.
> 
> victoria# pwd
> /usr/pkgsrc/net/eggdrop
> 
> victoria# ls -l patches
> Empty directory
> 
> victoria# cat distinfo
> $NetBSD: distinfo,v 1.2 2001/04/21 11:23:14 wiz Exp $
> 
> SHA1 (eggdrop1.6.6.tar.gz) = e8e8d540a5b9794233b9845f1c96868da726ed15
> Size (eggdrop1.6.6.tar.gz) = 841092 bytes
> 
> victoria#
> victoria# cat Makefile
> # $NetBSD: Makefile,v 1.7 2001/02/17 18:18:49 wiz Exp $
> #
> 
> DISTNAME=       eggdrop1.6.6
> PKGNAME=        eggdrop-1.6.6
> CATEGORIES=     net
> MASTER_SITES=   http://eggdrop.ircadmin.net/eggdrop1.6.6.tar.gz \
>                 ftp://ftp.ircadmin.net/eggdrop/eggdrop1.6.6.tar.gz
> 
> #BROKEN=	This package has not yet been updated to work past tcl-8.0.5.
> 
> # The maitainer of eggdrop-1.3.22
> MAINTAINER=     tv@netbsd.org
> HOMEPAGE=       http://eggdrop.ircadmin.net/
> COMMENT=        IRC robot with TCL scripting and multi-channel ability
> 
> DEPENDS+=       tcl>=8.3.2:../../lang/tcl
> 
> GNU_CONFIGURE=  yes
> CONFIGURE_ENV+= TCLLIB="${PREFIX}/lib" TCLINC="${PREFIX}/include"
> 
> post-configure:
> 	cd ${WRKSRC} && ${MAKE} config
> 
> 
> 
> victoria# make
> ===> Validating dependencies for eggdrop-1.6.6
> => Checksum OK for eggdrop1.6.6.tar.gz.
> ===> Extracting for eggdrop-1.6.6
> ===> Required installed package tcl>=8.3.2: tcl-8.3.2nb1 found
> ===> Patching for eggdrop-1.6.6
> ===> Ignoring empty patch directory
> ===> Configuring for eggdrop-1.6.6
> creating cache ./config.cache
> 
> 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... cc
> checking whether the C compiler (cc -O2  -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/pkg/lib) works... yes
> checking whether the C compiler (cc -O2  -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/pkg/lib) is a cross-compiler... no
> checking whether we are using GNU C... yes
> checking whether cc accepts -g... yes
> checking how to run the C preprocessor... cc -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... /usr/bin/install -c -o root -g wheel
> checking whether ln -s works... yes
> checking for strip... strip
> checking for gawk... no
> checking for mawk... no
> checking for nawk... no
> checking for awk... awk
> checking for basename... basename
> checking for uname... uname
> checking system type... NetBSD
> checking system release... 1.5.2
> checking for socket in -lsocket... no
> checking for connect in -lnsl... no
> checking for gethostbyname in -ldns... no
> checking for dlopen in -ldl... no
> checking for tan in -lm... yes
> checking for pthread_mutex_init in -lpthread... no
> checking for __pthread_mutex_init in -lpthread... no
> checking for pthread_mutex_init in -lpthreads... no
> checking for pthread_mutex_init... no
> 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 pid_t... yes
> checking for size_t... yes
> checking for working const... yes
> checking whether byte ordering is bigendian... no
> checking for inline... inline
> checking size of long... 4
> 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... yes
> checking for memcpy... yes
> checking for strftime... yes
> checking for fsync... yes
> checking for vsprintf... yes
> checking for broken libsafe sscanf... no
> checking for Cygwin environment... no
> checking for mingw32 environment... no
> checking for executable suffix... no
> checking for Tcl library... using /usr/pkg/lib/libtcl83.so
> checking for Tcl header... using /usr/pkg/include/tcl.h
> checking whether the tcl system has changed... yes
> checking for Tcl version... 8.3
> checking for Tcl patch level... 8.3.2
> checking for Tcl_Free in -ltcl83... yes
> checking for TclpFinalizeThreadData in -ltcl83... no
> updating cache ./config.cache
> creating ./config.status
> creating Makefile
> creating doc/Makefile
> creating scripts/Makefile
> creating src/Makefile
> creating src/md5/Makefile
> creating src/compat/Makefile
> creating src/mod/Makefile
> creating config.h
> creating lush.h
> 
> Configure is done.
> 
> Type 'make config' to configure the modules. Or 'make iconfig' to
> interactively choose which modules to compile.
> 
> After that, type 'make' to create the bot.
> 
> cd /usr/pkgsrc/net/eggdrop/work/eggdrop1.6.6 && make config
> detecting modules................... done.
> calculating dependencies.................. done.
> building ./src/mod/Makefile... done.
> 
> Configuring module compress ...
> 
> running in eggdrop mode.
> loading cache ../../../config.cache
> checking for gcc... (cached) cc
> checking whether the C compiler (cc -O2  -Wl,-R/usr/pkg/lib -L/usr/pkg/lib) works... yes
> checking whether the C compiler (cc -O2  -Wl,-R/usr/pkg/lib -L/usr/pkg/lib) is a cross-compiler... no
> checking whether we are using GNU C... (cached) yes
> checking whether cc accepts -g... (cached) yes
> checking for gzopen in -lz... yes
> checking how to run the C preprocessor... (cached) cc -E
> checking for zlib.h... yes
> checking for unistd.h... (cached) 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) cc
> checking whether the C compiler (cc -O2  -Wl,-R/usr/pkg/lib -L/usr/pkg/lib) works... yes
> checking whether the C compiler (cc -O2  -Wl,-R/usr/pkg/lib -L/usr/pkg/lib) is a cross-compiler... no
> checking whether we are using GNU C... (cached) yes
> checking whether cc accepts -g... (cached) yes
> checking for res_init... yes
> checking for res_mkquery... yes
> updating cache ../../../config.cache
> creating ./config.status
> creating Makefile
> 
> building ./src/mod/Makefile... done.
> 
> You can now compile the bot, using "make".
> 
> ===> Building for eggdrop-1.6.6
> (This may take a while.  Go get some runts.)
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./bg.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./botcmd.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./botmsg.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./botnet.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./chanprog.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./cmds.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./dcc.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./dccutil.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./dns.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./flags.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./language.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H    '-DCCFLAGS="cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H  "'  '-DLDFLAGS="cc -pipe"'  '-DSTRIPFLAGS="strip"' -c ./main.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./mem.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./misc.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./misc_file.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./modules.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./net.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./rfc1459.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./tcl.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./tcldcc.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./tclhash.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./tclmisc.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./tcluser.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./userent.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./userrec.c
> cc -pipe -O2 -I.. -I.. -DHAVE_CONFIG_H   -c ./users.c
> cc -pipe -O2 -I. -I../.. -I../.. -I../../src -DHAVE_CONFIG_H   -c ./md5c.c
> cc -pipe -O2 -I../.. -I../.. -I../../src -DHAVE_CONFIG_H   -c ./inet_aton.c
> cc -pipe -O2 -I../.. -I../.. -I../../src -DHAVE_CONFIG_H   -c ./snprintf.c
> cc -pipe -O2 -I../.. -I../.. -I../../src -DHAVE_CONFIG_H   -c ./memset.c
> cc -pipe -O2 -I../.. -I../.. -I../../src -DHAVE_CONFIG_H   -c ./memcpy.c
> cc -pipe -O2 -I../.. -I../.. -I../../src -DHAVE_CONFIG_H   -c ./strcasecmp.c
> cc -pipe -O2 -I../.. -I../.. -I../../src -DHAVE_CONFIG_H   -c ./strftime.c
> ---------- Yeah! that's the compiling, now the linking! ----------
> 
> Linking eggdrop...
> 
> cc -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  -L/usr/pkg/lib -ltcl83 -lm md5/md5c.o compat/*.o `cat mod/mod.xlibs`
> /usr/pkg/lib/libtcl83.so: warning: tmpnam() possibly used unsafely, use mkstemp() or mkdtemp()
> strip ../eggdrop
> Successful compile: eggdrop
> 
> 
> Shared object "libtcl83.so.1" not found
> *** Error code 1
> 
> Stop.
> *** Error code 1
> 
> Stop.
> *** Error code 1
> 
> Stop.
> *** Error code 1
> 
> Stop.
> victoria#
> victoria# ls -l /usr/pkg/lib
> total 1350
> -rw-r--r--  1 root  wheel   14946 Oct  7 19:04 libltdl.a
> -rwxr-xr-x  1 root  wheel     700 Oct  7 19:04 libltdl.la
> lrwxr-xr-x  1 root  wheel      14 Oct  7 19:04 libltdl.so -> libltdl.so.3.0
> lrwxr-xr-x  1 root  wheel      14 Oct  7 19:04 libltdl.so.3 -> libltdl.so.3.0
> -rwxr-xr-x  1 root  wheel   17195 Oct  7 19:04 libltdl.so.3.0
> -rw-r--r--  1 root  wheel  750496 Oct 12 17:49 libtcl83.a
> -rw-r--r--  1 root  wheel     707 Oct 12 17:49 libtcl83.la
> lrwxr-xr-x  1 root  wheel      15 Oct 12 17:49 libtcl83.so -> libtcl83.so.1.0
> lrwxr-xr-x  1 root  wheel      15 Oct 12 17:49 libtcl83.so.1 -> libtcl83.so.1.0
> -rw-r--r--  1 root  wheel  560239 Oct 12 17:49 libtcl83.so.1.0
> -rw-r--r--  1 root  wheel    1672 Oct 12 17:49 libtclstub83.a
> drwxr-xr-x  2 root  wheel     512 Oct  7 19:29 mysql
> drwxr-xr-x  4 root  wheel     512 Oct  7 19:02 perl5
> drwxr-xr-x  8 root  wheel     512 Oct 12 17:49 tcl8.3
> -rw-r--r--  1 root  wheel    6681 Oct 12 17:49 tclConfig.sh
> victoria#
> 
> 
> What am I doing wrong?
> 
> Thanks in advance
> 
> Heron Gallegos
> Cento Siglo XXI - Informatica Educativa
> Saltillo, Coahuila, Mexico
> 
> Additional information:
> victoria# pkg_info
> digest-20010320     message digest wrapper utility
> perl-base-5.6.0nb1  base installation of Perl
> p5-Data-Dumper-2.101 perl5 module for stringified perl data structures
> p5-Devel-DProf-19990108 perl5 module for profiling perl programs
> p5-Devel-Peek-1.0001 perl5 module containing a data debugging tool for XS programmers
> p5-CGI-2.75         perl5 module for writing forms-based CGI programs
> perl-mk-1.1         Note installed perl version for bsd.pkg.mk speedup
> perl-5.6.0nb5       Practical Extraction and Report Language
> libtool-base-1.4.20010219nb6 Generic shared library support script (the script itself)
> libtool-info-1.4.20010219nb6 Generic shared library support script - info pages
> libtool-1.4.20010219nb6 Generic shared library support script
> mysql-client-3.23.35 MySQL, a free SQL database (client)
> mysql-server-3.23.35nb1 MySQL, a free SQL database (server)
> tcl-8.3.2nb1        Ousterhout's Tool Command Language, a scripting language
> victoria#